Entries from 2007-11-04 to 1 day
ワンクリックで Mona の音楽プレイヤーが試せるEasyMonaPlayer-0.0.7 for Windowsをリリースしました。 まだα版でとても不安定ですが良かったら、あなたのデスクトップの片隅でお試しください。 ※QEMUというエミュレータが同梱されていて Mona が動作するの…
VM 用のコンパイラは Gauche で動かしていて、コンパイラの出力を C++ で読めるような形にして VM に渡している。 そのうちコンパイラを C++ で書き直さないといけないので面倒だと思っていた。 しかし良く考えればコンパイラをコンパイルしたコードが VM 上…
Scheme で書かれた VM と C++ で書かれた VM は全く同じ仕様なのだからテストケースを共有すべき事に気づく。 テストに失敗した場合は、VM のデバッグモードを ON にしてレジスタを見ながらデバッグできるような仕組みもついでに作ってしまおう。テストファ…
昼までがんばった。 実装が終わるとほぼ同時に、iPod の電池もなくなった。 これは休めというサインだな。 午後は運動したり、のんびりしたりしよう。 カメラ持って公園行くか。
#define HOGE(name) class name { int LOWER_CASE(name)##_; } HOGE(Hige); => class Hige { int hige_; }; みたいな。
call/cc を実装。 ヒープベース VM とはちと違う。 conti で stack を丸ごと保存 nuate で stack を戻す return で戻した stack から復帰 という流れ。Scheme 版では以下のようなテストが通るようになった。 (test* "call/cc" 4 (evaluate '(call/cc (lambda…