https://github.com/shinh/makelisp

Lisp インタプリタを書きました。 GNU make で。

https://github.com/shinh/makelisp/blob/master/makelisp.mk

もちろん $(shell) や $(guile) は使わない縛りです。

だいたい sedlisp や beflisp と似たようなことができます。

最近作ってる GNU make clone であるところの kati でもちゃんと動きます。というか fizzbuzz.l とかだと 50 倍以上速い。

実装はまあ、やるだけ…と言いたいところですが、加減乗除が無いとか、文字列演算も色々不便とかあったりはします。あと地味に引数以外にローカル変数が無いのもだるいですね。当初は lisp to make translator を実装する感じがラクかな…と思ってたんですが、ローカル変数無いとかそういう理由で、別にラクじゃないどころかむしろ大変な気がしたのでやめました。

追記: もっとガチな Lisp 実装があるとのこと https://github.com/kanaka/mal/ 四則演算とかがちゃんと速いのがマジメ感あってやばい。おかげで一個 kati のバグ見つけた。。