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 とか) のコンパイル方法を決めて実装。