Scheme Compiler の勉強 (1) - 環境の整備

  • Compilers: Backend to Frontend and Back to Front Again 1.2 Immediate Constants 相当。このドキュメントは、写経の部分もあるけど自分で足りない部分をエクササイズとして書いていく必要がある。
  • tagged pointer. 32bit の2ビットをタグに使う。型が変数ではなく値のほうについている。例えばドキュメントが有る奴で比較すると Common Lisp の movitz は3ビットを使う。
  • この変更によって、compiler.scm の emit-program が修正される。同時に runtime.c も修正。まだ足し算さえできない状態。
  • ASCII文字を表示させるために(tests-1.2-req.scm を通すために)は、エクササイズが必要。

続く。