SParser-2.3
http://fhuman.esys.tsukuba.ac.jp/~nozom/SParser-2.3.zip
主な変更点:
- Evaluatorを導入して、各オブジェクトの持っていたeval()をEvaluatorに集約した
- quasiquote(`)、unquote(,)、unquote-splicing(,@)を実装
- let、lambdaで新しい変数束縛が作られない大バグを修正
- 組み込み関数を、CORE::プリフィックスを付けて呼び出せるようにした(ユーザ定義関数で組み込み関数をオーバーロードできるように)
Evaluatorの導入は来るべきコンパイラの実装に備えて。continuationがあるせいで、quasiquoteを実装するのは非常にややこしかった。どっかにバグがあるかも。