[DLR]ASTネタというか独自の言語実装を考える方に

DLRにおける抽象構文木(AST)の解析についてというエントリに対して、興味深いトラックバックをNyaRuRuさんからいただきました。NyaRuRuさんのエントリでは、独自の言語プロバイダを実装してDLRのASTを調べるというものです。

DLRを利用した言語の実装を行うには、IronPython2.0A2が参考になります。でも、大き過ぎるので把握が大変という天の声も聞こえてきます。そういう私のような者のためにJohn LamがToyScriptというサンプルを公開してくれています(情報としてはちょっと古いかも。私は、早くから知っていたんですけど)。ToyScriptは、JohnがIronPythonからインスパイアされて簡単なASTを確認するために作成したようです。この使い方は簡単で、IronPython 2.0A1とToyScriptを用意して、ビルドして実行します。コンソールに対して、四則演算などを入力します。そうすると入力された四則演算がDLRで実行されているのを確認することができます。後は、ソースコードを丁寧に調べていけばDLR上で独自の言語を実装するためのヒントが見つかるという感じのものです。

それからDLRネタというか、IronPythonネタというか、Monoにおける状況ですが、Moonlightの話とDLRの話があります。この状況を調べていくには、monoプロジェクトはもちろんですが、FePyプロジェクトも調べていくと状況が良く理解できます。ちなみにDLRは、5月の頭の時点でMonoに移植する方法が見つかっています。私は、FePyプロジェクトの情報からこのことを知りました(感謝、Sanghyeonさん)。