Scheme コンパイラの勉強(46)
いろんな実装を真似して何とか 3imp 3.4 の compiler/VM が動くようになった。まだ理解しているとは言いがたいのでコードは貼付けない。
- record, record-case は結局 define-macro で書いた。syntax-case は良くわかっていない。
- recur って let (named let) そのものなのか。
- gauche.test による Unit test を少し作成。
TODO;
- Unit test をもっと。コンパイラの挙動に安心できないと先が大変。
- compile 結果のリストの pretty print。どうもこの一つのリストになっているアセンブリは見難い。
- VM を define-class で書き換えて整理。
- primitive 関数(+,-,や cons とか) のコンパイル方法を決めて実装。