R6RS test suiteを実行するためにrecordとconditionを入れた。conditionは元のmoshから拾ってきている。そろそろコードのキャッシュとVMへの組み込みを試したい。
meta-circular
コードの生成はGaucheだけで行うことができ、一度expanderを生成すれば、moshだけでもexpanderを生成することが出来る。
psyntaxの生成にも使えるかも知れない。
REPL
ERR5RSのREPL。ライブラリをロードしたり、実行中の環境を書き換えることも出来る。
(fmt)ライブラリも正常に動作する。
REPLの起動には多くのライブラリを読み込む必要があり、それなりに時間が掛かるので、元のVMから直接スクリプトを起動するモードと、オプションをパースしてREPLに入るモードの2つを設ける予定。
R6RS test suite
まだ通らない物も多い。
- 実行できない
- arithmetic/flonums
- conditions
- enums
- eval - 何か間違っている
- exceptions - 結果を表示しようとするとmoshがSEGVする
- io/ports
- programs
- test
- run
- 成功しないテストがある
- base 37/2053
- hashtables 1/249
- records/syntactic 4/53
- syntax-case 10/102
これら以外のテストは通過する。