2008-11-01から1ヶ月間の記事一覧

value関数(完結)

一応今回で「The Little Schemerの勉強垂れ流し日記」は完結。 残るアクションは1つ。 ということで、今回は*application関数をば。定義は以下。 ;; アクション本体 (define *application (lambda (e table) (_apply (meaning (function-of e) table) (evli…

value関数(その3)

それじゃ、id:yagiey:20081114で紹介した6種類のアクションを実装していくことにする。 まずは*const関数。(半角のアステリスク記号は、はてな記法に解釈されるため、ソースコード以外の箇所では全角文字で表記) 早速定義を示すと、 (define *const (lamb…

value関数(その2)

ようやく読了したよ、The Little Schemer。 ということで、あと2、3回くらいでこの本に関する日記も終わりそう。さて、まずS式を受け取って、そのS式のタイプ(id:yagiey:20081107の表を参照)に応じた動作をする関数(以下、アクション)を返すexpression-t…

value関数(その1)

データとしてのリストを受け取り、それをプログラムとして解釈して評価するvalue関数をつくろうじゃないか、というお話。 たとえば、 (car (quote (a b))) というリスト(関数適用じゃない、データとしてのリスト)に関して、 (value '(car quote (a b))) の…

テーブルから名前の検索

久しぶりにThe Little Schemer。 9章までは終わってたから、最終章の10章をば。 いろんな人が書いたレビューなどによると、この章ではSchemeを用いてScheme処理系を実装するのだそうだ。 The Little Schemerって、「この章の目標は○○が出来るようになる事で…