2014-08-01から1ヶ月間の記事一覧
いよいよ3章。キーワードは、 モジュール化 オブジェクトによるプログラムの組織化 代入(assignment)と局所状態(local state) 環境モデル(enviroment model) ストリーム(streams)と遅延評価(delayed evaluation) あたりのようです。 代入と局所状態 これまで…
最後は端折ってしまいましたが、長い長い2章がようやく終わったので、 自分なりにまとめたいと思います。(1章でもまとめておけばよかったorz) *** ところで、この章で学ぶべきものは何でしょうか? それは「§2.1.3 データとは何か」の以下の一節を理解す…
すみません、さくっとパスします。おそらくこの章の本質ではないと思うので。 必要ならまた戻ってくると思います。。 ※「SICP読書ノート」の目次はこちら
「§2.5.2 異なる型のデータ統合」から。 全体のソースコードはGitHubに置いています。 https://github.com/uents/sicp/blob/master/ch2/ch2.5.2.scm 異なる型のデータ統合 前回のエントリで汎用演算システムを構築したが、 異なる型同士の計算はできなかった…
「§2.5 汎用演算システム」から。 この章は2章でこれまで学んだことの応用問題といった感じ。データ主導を使って汎用演算システムを構築して行きます。 全体のソースコードはGitHubに置いています。 https://github.com/uents/sicp/blob/master/ch2/ch2.5.1.…
「§2.4.3 データ主導プログラミングと加法性」の続き。 全体のソースコードはGitHubに置いています。 https://github.com/uents/sicp/blob/master/ch2/ch2.4.3.3.scm メッセージパッシング §2.1.3 データとは何か で見た、 クロージャの特性を利用したアクセ…
「§2.4.3 データ主導プログラミングと加法性」の続きから。 全体のソースコードはGitHubに置いています。 https://github.com/uents/sicp/blob/master/ch2/ch2.4.3.2.scm 問題 2.74 アキナイ有限会社 (Insatiable Enterprises, Inc.) のデータベースを統合す…
「§2.4.3 データ主導プログラミングと加法性」から。 全体のソースコードはGitHubに置いています。 https://github.com/uents/sicp/blob/master/ch2/ch2.4.3.1.scm 複素数のデータ主導プログラミング 前回のエントリの複素数データを例に、 データ主導プログ…
「§2.4 抽象データの多重表現」から。 はじめに §2.4の最後の問題2.76で総括するが、抽象データの汎用演算の構築には3つの戦略がある。 明白な振り分けを持つ汎用演算 (strategies—generic operations with explicit dispatch) データ主導流 (data-directed …