TinyPieは、Pythonのような構文を持つ簡単なプログラミング言語のためのツリーベースのインタプリタである 。これは、抽象構文木(AST)を構築し、ツリーを歩いて、ソースコードを実行します。
これは、「言語実装パターン」からパイの言語に基づいています。 「ツリーベースのインタプリタではなく、コードジェネレータの端にグラフトされたインタプリタとコンパイラのフロントエンドのようなものです」:本からの引用Ch.9。
プロジェクトの目標:
1.自己教育
2.簡単なプログラミング言語またはDSL
この機能のためにPythonで自分のインタープリターを作り上げるに興味がある人のための一例として機能する:
このPythonで実装
正規表現ベースのレクサー
LL(k)は再帰下降パーサ
パーサーは、均質な抽象構文木(AST)を構築
静的/レキシカルスコープをサポートします。
インタプリタは、ASTの構築中に完全な範囲のツリーを構築します。
Interpeterは、グローバルメモリ空間と関数空間スタックを管理します
インタプリタは、外部ASTの訪問者を実装します
前方参照のサポート
このリリースで新しい何が:
この追加されたバイトコードアセンブラ
追加されたレジスタベースの仮想マシン
この要件:
このパイソン
コメントが見つかりません