コンパイラ/VM 書き直し - Scheme VM を書く

Gauche で動く コンパイラ/VM の書き直しが終わった。
昨日の時点で難しい局面を越えていたので、今日はテストが通るように Instruction の追加などを行った。
ちなみに Gauche上ので新旧VMWikiのコードを動かしたが 350ms -> 250ms とかなり速くなった。

対応したのは

  • global variables の assign, refer
  • vector, pair の操作
  • Internal define
  • 可変長引数
  • and, or, when, unless, regex, case, aif
  • quasiquote
  • apply
  • library の load
  • Regex
  • port

など。