Three Implementation Models for Scheme by R. Kent Dybvig

ドラゴンブックを読み終わったあと、実は「Three Implementation Models for Scheme by R. Kent Dybvig」という論文を読んでた。
これは id:yhara さんにすすめられたもので、「Scheme の処理系を3つのモデルで実装する方法」を長所/短所をまじえて説明している論文。


英語で180ページ程あるので苦戦していたのだけど、実家で紙に印刷して冊子上にしたらあれよあれよという間に読み終わった。
PDFより、やっぱり紙だよなと思った。


論文の内容は

Scheme で作る話。


上記の順序で処理系を作っていく。
単純なものから、よリ効率の良いものへ改善していく内容で超ためになった。
まず VM の作り方が具体的に分かったのも面白いし、各処理系の問題点を一つ一つ改善していく手法が紹介されているのもぐいぐい引き込まれる。
今作っている処理系の問題と解決方法をずばり指摘されているようで、今の自分のレベルにぴったりの論文だった。(id:yharaさんに感謝)。
string base の処理系のところは正直興味がなくなってしまったのだけど heap base / stack base の話は読んでよかった。
今ちょうど SICP で処理系を書いている、id:yamanetoshiさんとか、なつたんさんはそれが落ち着いたら読んでみると面白いかも。


あー。stack base の処理系作っちゃおうかな。
ちなみにこの論文は 1987年 つまり20年前!の論文。
そのせいか、Scheme の文法中に [ が出てきていて今と違う。(読めるけどね)。
id:SaitoAtsushi さん曰く、作者の Kent さんはわりと良く出てくる有名な方らしい。


さて次は

などを読む予定が待ち構えている。
並列にやるのは効率がよろしくないので出来るだけ1冊ずつ。