プログラミング再入門

プログラミングをもう一度ちゃんと勉強する読書ノート

2013-08-01から1ヶ月間の記事一覧

SICP 3.3.3 Representing Tables

キュー(待ち行列)に引き続き今度はテーブル(表)。2章で使ったテーブルがここで漸く登場。 ノート 1次元のテーブルとはキーでインデックス化された列の事。recordと呼んでいるセルのcarがキーを、cdrが値を指している。そのrecordのリスト(あるいはそ…

SICP 3.3.2 Representing Queues

ノート 待ち行列の表現 ここでは後ろから詰めて前から出す方式。と言うのも後で分かるが最後の要素を削除するのは意外と厄介なので、自然と削除は先頭からとなる。一番後ろを見つけるのに手前から一つずつ追っていたのでは要素数が大きくなった時に非効率な…

SICP 3.3 Modeling with Mutable Data

ノート 第2章で勉強した複合データはコンストラクタとセレクタを定義した。代入がが出来れば状態が変化する複合データも作れる。mutatorの導入。mutableと言う言葉は良く目にするが、オブジェクトの状態を変化させるmutatorと言う言葉はこれまで余り目にす…

SICP 3.2.3 Frames as the Repository of Local State

局所状態の保存場所としてのフレーム。 ノート 手続きとはlambdaの本体とlambdaが評価されたときのフレームへの参照をもったペア。 その手続きが呼び出された時には引数の値に拘束した仮引数を保存したフレームを作り、その外部環境としてその手続きが参照し…

SICP 3.2 The Environment Model of Evaluation

Evaluationは評価だが要はプログラムの実行の事。なのでプログラム実行の為の環境モデル。実行と言っている時点で命令型な考え方だけど。置換モデルはあくまでそう解釈出来ると言う意味で概念的なので具体的にコンピュータがどう動作するのかをイメージしよ…