Structure and Interpretation of Computer Programs
Free

Structure and Interpretation of Computer Programs

By Harold Abelson
Free
Book Description

これはPDF版の"Structure and Interpretation of Computer Programs"です。Harold Abelson, Gerald Jay Sussman, そして Julie Sussmanによる著書です。PDF版はUnofficial Texinfo Format (UTF)からのさらなる開発であり、 元々はMIT PressのHTML versionからの派生です。



English, Français, Polski, Deutsch

Table of Contents
  • 非公式Texinfoフォーマット
  • 非公式日本語版
  • 献辞
  • 前書き
  • 第二版 序文
  • 第一版 序文
  • 謝辞
  • 手続を用いた抽象化の構築
    • プログラミングの要素
      • 名前付けと環境
      • 組み合わせの評価
      • 複合手続
      • 手続適用の置換モデル
      • 条件式と述語
      • 例: ニュートン法による平方根
      • ブラックボックス抽象化としての手続
    • 手続とそれが生成するプロセス
      • 線形再帰と反復
      • 木再帰
      • 増加のオーダー
      • 指数計算
      • 最大公約数
      • 例: 素数判定
    • 高階手続による抽象の形式化
      • 引数としての手続
      • lambdaを用いた手続の構築
      • 汎用手法としての手続
      • 返り値としての手続
  • データを用いた抽象化の構築
    • データ抽象化のイントロダクション
      • 例: 分数のための数値演算命令
      • 抽象化バリア
      • データにより何が意味されるのか
      • 延長課題: 区間演算
    • 階層データと閉包性
      • 列の表現
      • 階層構造
      • 慣習的インターフェイスとしての列
      • 例: ピクチャー言語
    • 記号データ
      • クォート
      • 例: 記号微分
      • 例: 集合を表現する
      • 例: ハフマン符号化木
    • 抽象データの多重表現
      • 複素数のための表現
      • タグ付きデータ
      • データ適従プログラミングと付加性
    • ジェネリック命令を持つシステム
      • ジェネリックな数値演算命令
      • 異なる型のデータを組み合わす
      • 例: 記号代数
  • モジュール方式、オブジェクト、状態
    • 代入と局所状態
      • 局所状態変数
      • 代入導入の利点
      • 代入導入のコスト
    • 評価の環境モデル
      • 評価のルール
      • 単純な手続の適用
      • 局所状態のレポジトリとしてのフレーム
      • 内部定義
    • ミュータブルデータによるモデリング
      • ミュータブルなリスト構造
      • キューの表現
      • テーブルの表現
      • デジタル回路のシミュレータ
      • 制約伝播
    • 並行性: 時間が本質
      • 並行システム内の時間の性質
      • 並行性制御のための仕組み
    • ストリーム
      • ストリームとは遅延化リスト
      • 無限ストリーム
      • ストリームパラダイムの利用
      • ストリームと遅延評価
      • 関数型プログラムのモジュール化とオブジェクトのモジュール化
  • メタ言語抽象化
    • メタ循環評価機
      • 評価機の核
      • 式の表現
      • 評価機のデータ構造
      • 評価機をプログラムとして実行する
      • プログラムとしてのデータ
      • 内部定義
      • 構文分析を実行から分離する
    • Scheme上でのバリエーション — 遅延評価
      • 正規順と適用順
      • 遅延評価を持つインタプリタ
      • 遅延化リストとしてのストリーム
    • Scheme上でのバリエーション — 非決定性演算
      • ambと検索
      • 非決定性プログラムの例
      • Amb評価機の実装
    • 論理プログラミング
      • 演繹的情報検索
      • クエリシステムの働き方
      • 論理プログラミングは記号論理学なのか?
      • クエリシステムの実装
        • ドライバループとインスタンス化
        • 評価機
        • パターンマッチングによりアサーションを見つける
        • ルールとユニフィケーション
        • データベースの保守
        • ストリーム命令
        • クエリ構文手続
        • フレームと束縛
  • レジスタマシンによる演算
    • レジスタマシンの設計
      • レジスタマシンを記述するための言語
      • 機械設計における抽象化
      • サブルーチン
      • 再帰実装にスタックを使用する
      • 命令の要約
    • レジスタマシンシミュレータ
      • マシンモデル
      • アセンブラ
      • 各命令に対する実行手続の生成
      • 機械のパフォーマンスの監視
    • 記憶域の割当とガベージコレクション
      • ベクタとしてのメモリ
      • 無限のメモリの幻想を維持する
    • 明示的制御評価機
      • 明示制御評価機の核
      • 列の評価と末尾再帰
      • 条件文、代入、定義
      • 評価機を実行する
    • コンパイル
      • コンパイラの構造
      • 式のコンパイル
      • 組み合わせのコンパイル
      • 命令列のコンパイル
      • コンパイルされたコードの例
      • レキシカルアドレッシング
      • コンパイル済みコードと評価機の連結
  • 参考文献
  • 課題リスト
  • 図一覧
  • 索引
  • 奥付
    No review for this book yet, be the first to review.
      No comment for this book yet, be the first to comment
      Also Available On
      App store smallGoogle play small
      Categories
      Curated Lists
      • Pattern Recognition and Machine Learning (Information Science and Statistics)
        by Christopher M. Bishop
        Data mining
        by I. H. Witten
        The Elements of Statistical Learning: Data Mining, Inference, and Prediction
        by Various
        See more...
      • CK-12 Chemistry
        by Various
        Concept Development Studies in Chemistry
        by John Hutchinson
        An Introduction to Chemistry - Atoms First
        by Mark Bishop
        See more...
      • Microsoft Word - How to Use Advanced Algebra II.doc
        by Jonathan Emmons
        Advanced Algebra II: Activities and Homework
        by Kenny Felder
        de2de
        by
        See more...
      • The Sun Who Lost His Way
        by
        Tania is a Detective
        by Kanika G
        Firenze_s-Light
        by
        See more...
      • Java 3D Programming
        by Daniel Selman
        The Java EE 6 Tutorial
        by Oracle Corporation
        JavaKid811
        by
        See more...