vm2gol-v2 移植まとめ

要件をゆるゆるにしてハードルを下げまくった初心者・入門者(=自分)向けの簡単・素朴で割といいかげんな自作言語のコンパイラ(+α) vm2gol-v2 の移植です。

移植元の Ruby版のコンパイラ部分だけだと 1000行くらい、という素朴さ。

  • ノリとしては zick さんの LISP Implementation Advent Calendar : ATND hatebu (2014年、 Wayback Machine )に近い感じ(のつもり)
  • mal (Make a Lisp) の影響もちょっとあると思います
  • 基本的にやっつけ、ものによっては殴り書きです。 動いたら(コンパイルできたら)そこで終わりで、気が向けば多少はきれいにしたりして、次の言語へGO。細かいことを気にしだすと無限に時間がかかるので割と意図的に気にしないようにしています。
  • それぞれの言語に詳しくなることよりも、とにかく作って動かすことを優先しています。
    • 「その言語らしい書き方」にするようがんばらない。気が向いたらやる。
  • Java 以外はエディタ(Emacs)と print デバッグで。 ものによっては language server を併用。

上から新しい順。