ToyScheme-0.5

define-syntaxがようやくまともに動くようになったので公開しておこう。

(こっそりSubversionリポジトリも公開中)。

define-syntax以外にも、quasiquoteを実装し直したり、新たにSyntaxクラスを導入したり、今回はマクロ周りで大きな変更があった。

最初、define-syntaxの仕様を自分で実装するのは無理だと思ったのだが、調べたらSLIBに含まれるmbe.scm (Macro by Example)にSchemeによる実装があったので、それを参考にJavaで書いた。同様に、quasiquoteの実装もJSchemeのprims.scmを参考にした。