Language Portal

自作言語

Bem130 が継続して設計・実装してきた自作言語群を、github.com/bem130github.com/neknaj の両方を通してまとめたページです。

きれいな一本線の時系列ではなく、試作、作り直し、脇道の DSL、文書記法、再設計を何度も繰り返しながら進んできた流れとして整理します。 この親ページでは全体像と歴史を扱い、現在も主軸として動いている project だけを個別ページへ分けます。

History

自作プログラミング言語の歴史

これは単純な年表ではありません。思いついた案を一度形にし、詰まったら別の方向を試し、その結果を持ち帰って本流を作り直す、という反復の歴史です。

Main Route

主軸として繰り返し作り直してきた流れ

  1. NLP / NLPS

    bem130 側で、逆ポーランド記法やスタックマシン寄りの発想から処理系全体を自力で持つところを試した段階。

  2. B-debt

    評価規則や処理系の構造を整理し直すための橋渡し。きれいな完成版ではなく、次へ進むための立て直しに近い世代。

  3. NEPLg1

    neknaj 側に移ってからも、いきなり完成形になったわけではなく、前置記法と括弧の共存を強く試した過渡期がある。

  4. NEPLg2 / NEPLg2.1

    現在の主軸。前置記法に一度絞り込み、docs / tutorial / playground まで含めた実用レベルへ押し上げている段階。

Branches

本流から分岐しつつ戻ってくる枝

  • NDDS / custommd / gloss

    文書記法と変換系の枝。bem130 側の試作から始まり、neknaj 側で gloss のように独立 project として整理されている。

  • circuitgame / circuitgame-language / cpu-circuitgame

    論理回路 DSL の枝。学習ツールの UI と、回路を記述・評価する言語設計が結び付いている。

  • nvg / nve / NVE_circuitgame

    動画や仮想環境の表現系 DSL。本流で得た構文感覚や評価系の発想を別媒体へ持ち出した系列。

  • その他の短命な試作群

    一度だけ強く試した repo も多いが、重要なのは repo 単位の寿命より、そこで試した構文や実装方針が次の世代へ何を残したかです。

Routes

実情ベースで見た流れ

進み方は「一本の系譜」より、「主軸を作り直しながら脇道で試した結果を戻してくる」構造に近いです。

1. 処理系を自力で完結させる段階

初期段階では、まず parser / evaluator / runtime を通して作ること自体が主題でした。記法の洗練より、言語処理全体を自分の手で持つことが優先です。

2. 括弧・前置・後置の試行錯誤

記法は何度も揺れています。ある時点の構文をそのまま直線的に改良したのではなく、複数の案を試し、捨て、残った考え方だけが次へ持ち越されています。

3. 文書記法や DSL が脇道ではなく実験場になる

NDDSglosscircuitgamenvg などは別 project ですが、構文、変換、実行環境、UI 接続を試す重要な枝です。

4. neknaj 側で主軸を整理し直す

現在は neknaj 側で project 群を整理し、過去に bem130 側で積み上げた試行も踏まえながら、NEPLg2 を中心に docs / tutorial / playground まで含めた形で育てています。

Current Direction

現在の方向性

前置記法を実用へ押し上げる

まずは name arg1 arg2 に絞って処理系を安定させ、その上で将来的な表記共存を目指します。

マルチプラットフォーム前提で設計する

WASM / WASI を中心に据え、Web・CLI・desktop に同じ核を接続する構成を取ります。

周辺記法も同時に育てる

文書系や DSL も、構文設計の実験場としてプログラミング言語本流と並行して育てます。

設計と実装を分離して前へ進める

設計の核は人間が握り、実装量の大部分は AI 補助で突破する方針です。

Projects

主要 project

自作言語は 1 つの project 群として見ています。ここではその中で重要な repo を並べ、GitHub と公開先への導線をまとめます。

Latest Mainline

NEPLg2

現行の中心 repo です。前置記法・式指向・オフサイドルールを軸に、実際に動く実用レベルの自作プログラミング言語へ押し上げている現在地として扱います。

Mainline History

NLP / NLPS / B-debt / NEPLg1

現在の NEPLg2 に繋がる本流の前史です。NLPNLPSB-debtNEPLg1 などはこのページで流れとして扱い、個別 showcase は作りません。

Document / Markup

NDDS / gloss / custommd

文書記法と変換系の流れです。bem130 側の試作から始まり、neknaj 側で gloss のように独立度の高い repo へ整理された枝として見ます。

回路 DSL や動画 DSL の枝です。個別の用途を持ちながらも、記法・評価・UI 接続・マルチプラットフォームという自作言語本流の課題を別角度から検証しています。