define-syntaxがようやくまともに動くようになったので公開しておこう。 ToyScheme-0.5.zip コミット漏れがあった ToyScheme-0.5.1.zip (こっそりSubversionリポジトリも公開中)。 define-syntax以外にも、quasiquoteを実装し直したり、新たにSyntaxクラスを導入したり、今回はマクロ周りで大きな変更があった。 最初、define-syntaxの仕様を自分で実装するのは無理だと思ったのだが、調べたらSLIBに含まれるmbe.scm (Macro by Example)にSchemeによる実装があったので、それを参考にJavaで書いた。同様に、quasiquoteの実装もJSchemeのprims.scmを参考にした。 参考文献 Macro by Example SLIB JScheme