読者です 読者をやめる 読者になる 読者になる

レガシーコード生産ガイド

私に教えられることなら

Smalltalk処理系開発日記5 バイトコード動作

ついに前回に書いた目標の3+4、それから5 factorialバイトコードが動作しました。

github.com

主にGCのバグと戦ったり、深夜に書いた自分のコードと格闘したりしていました……。配列のn番地のアドレスが知りたいのに、n番地のデータを取っているコードを書いていて腰が抜けました。

今後の作業は

  1. バイトコードのテストが長くなるので、短く書けるようにしてみる(Lispのマクロが欲しい……)
  2. コンテキストのリターンをどこが責任持つかなど、Smalltalkプロセス周りがあやふやなので設計を決める
  3. バイトコードの残りと大量のプリミティブを実装する
  4. パーサで止めているコンパイラの続き

という順番になると思います。3,4で諦めないように何か対策を取りたいところです。

f:id:phaendal:20160910164117p:plain

広告を非表示にする