2014-07-01から1ヶ月間の記事一覧
ここからはシミュレータの解説。モデルとしては完全にオブジェクト指向的。 ノート make-machineではメッセージパッシングに応答する手続きを作る。つまりメソッドを持ったオブジェクト。実際にはmake-new-machineがオブジェクトを作り、make-machineではそ…
いよいよ本題な感じ。 ノート Exercise 5.7 実装してみないことには何も分からないので、先の節の実装を写経してシムレータを作成してから実行してみる。 Racketではペアはimmutableでset-cdr!は使えないので、instructionのペアのメソッドを以下の様にmpair…
ノート 昔懐かしいBASICの世界。共通部分を括り出す。 括り出すステップ: それぞれのGCD計算部分の先頭にgcd-1、gcd-2のラベル、GCD計算部分を抜けた所にafter-gcd-1、after-gcd-2のラベルをつけている状態 レジスタはGCDの計算区間でしか使用しないので共…
ノート プログラムの実行環境についてsubstitution model、environment model、metacircular evaluatorと見て来たが、一番核心の部分はベースのLispシステムに委ねて解説されていない。この章ではプロセッサとそのマシン語に相当するレジスタ・システムをLis…