ちゃんと読めていませんでした・・・。掲題の通りでした。
Scheme で作った小さな Lisp 処理系に自身の定義を食わせて、Scheme の上で走る Lisp の上で走る Lisp を動かす、という趣旨だったようです。
どうりで if ではなく cond を使っているし、(let ((var init) ...) body ...) を使わずに ((lambda (var ...) body ...) init ...) だったわけなんですね・・・。
つまり、 (value '(value 1)) が動くようにするということだったようです。
Lisp 系の書籍は、このネタ多いなー(笑)LOL では「Lisp Moving Forth Moving Lisp」でした。
0 件のコメント:
コメントを投稿