『計算機プログラムの構造と解釈』
https://gyazo.com/f4f7d82d4daf1e6d15c4dc7b51b68a45
2000/2/1
割と頻繁に「良書だ」と言われているのを見かけるが、未だに何の本なのかわかっていないmrsekut.icon
第2版が出ている
目次
序文
第二版への前文
第一版への前文
謝辞
1 手続きによる抽象の構築
1.1 プログラムの要素
1.1.1 式
1.1.2 名前と環境
1.1.3 組合せの評価
1.1.4 合成手続き
1.1.5 手続き作用の置換えモデル
1.1.6 条件式と述語
1.1.7 例: Newton法による平方根
1.1.8 ブラックボックス抽象としての手続き
1.2 手続きとその生成するプロセス
1.2.1 線形再帰と反復
1.2.2 木構造再帰
1.2.3 増加の程度
1.2.4 べき乗
1.2.5 最大公約数
1.2.6 例: 素数性のテスト
1.3 高階手続きによる抽象
1.3.1 引数としての手続き
1.3.2 lambdaを使う手続きの構築
1.3.3 一般的方法としての手続き
1.3.4 値として返される手続き
2 データによる抽象の構築
2.1 データ抽象入門
2.1.1 例: 有理数の算術演算
2.1.2 抽象の壁
2.1.3 データとは何か
2.1.4 拡張問題: 区間算術演算
2.2 階層データ構造と閉包性
2.2.1 並びの表現
2.2.2 階層構造
2.2.3 公認インターフェースとしての並び
2.2.4 例: 図形言語
2.3 記号データ
2.3.1 クォート
2.3.2 例: 記号微分
2.3.3 例: 集合の表現
2.3.4 例: Huffman符号化木
2.4 抽象データの多重表現
2.4.1 複素数の表現
2.4.2 タグつきデータ
2.4.3 データ主導プログラミングと加法性
2.5 汎用演算のシステム
2.5.1 汎用算術演算
2.5.2 異る型のデータの統合
2.5.3 例: 記号代数
3 標準部品化力, オブジェクトおよび状態
3.1 代入と局所状態
3.1.1 局所状態変数
3.1.2 代入を取り入れた利点
3.1.3 代入を取り入れた代価
3.2 評価の環境モデル
3.2.1 評価の規則
3.2.2 単純な手続きの作用
3.2.3 局所変数の入れ物としてのフレーム
3.2.4 内部定義
3.3 可変データでのモデル化
3.3.1 可変リスト構造
3.3.2 キューの表現
3.3.3 表の表現
3.3.4 ディジタル回路のシミュレータ
3.3.5 制約の拡散
3.4 並列性: 時が本質的
3.4.1 並列システムでの時
3.4.2 並列性の制御機構
3.5 ストリーム
3.5.1 ストリームは遅延リスト
3.5.2 無限ストリーム
3.5.3 ストリームパラダイムの開発
3.5.4 ストリームと遅延評価
3.5.5 関数的プログラムの部品化度とオブジェクトの部品化度
4 超言語的抽象
4.1 超循環評価器
4.1.1 評価器の中核
4.1.2 式の表現
4.1.3 評価器のデータ構造
4.1.4 評価器をプログラムとして走らせる
4.1.5 プログラムとしてのデータ
4.1.6 内部定義
4.1.7 構文解析を実行から分離する
4.2 Schemeの変形---遅延評価
4.2.1 正規順序と作用的順序
4.2.2 遅延評価の解釈系
4.2.3 遅延評価リストとしてのストリーム
4.3 Schemeの変形---非決定性計算
4.3.1 ambと探索
4.3.2 非決定性プログラムの例
4.3.3 amb評価器の実装
4.4.1 推論的情報検索
4.4.2 質問システムはどう働くか
4.4.3 論理型プログラミングは数学的論理か
4.4.4 質問システムの実装
5 レジスタ計算機での計算
5.1 レジスタ計算機の設計
5.1.1 レジスタ計算機の記述言語
5.1.2 計算機設計における抽象
5.1.3 サブルーチン
5.1.4 再帰を実装するためのスタックの使用
5.1.5 命令の要約
5.2 レジスタ計算機シミュレータ
5.2.1 計算機モデル
5.2.2 アセンブラ
5.2.3 命令の実行手続きの生成
5.2.4 計算機の性能の監視
5.3 記憶の割当てとごみ集め
5.3.1 ベクタとしてのメモリー
5.3.2 無限メモリーの幻想の維持
5.4 積極制御評価器
5.4.1 積極制御評価器の中核
5.4.2 並びの評価と末尾再帰
5.4.3 条件式, 代入および定義
5.4.4 評価の実行
5.5 翻訳系
5.5.1 翻訳系の構造
5.5.2 式の翻訳
5.5.3 組合せの翻訳
5.5.4 命令列の組合せ
5.5.5 翻訳したコードの例
5.5.6 文面アドレス
5.5.7 翻訳したコードと評価器のインターフェース
参考文献
問題リスト
索引