やっぱコンパイラを書くなら
オブジェクト指向言語でinterpreterパターンで書くのが一番だよね。
自分の好きな言語で書けるし。