タグ: sicp

問題4.36 – SICP(計算機プログラムの構造と解釈)その210

問題4.36 単純に an-integer-between を an-integer-starting-from に変更しただけでは、任意の Pythagoras 三角形を生成する方法として適切でない理由は。 an-integer-starting-from は継続を失敗することが無いために無限に継続するので、バックトラックできないため計算ができない。 正常に計算できるためには、最大値を与えて継続…続きを読む

4.3.3 amb 評価器の実装 – SICP(計算機プログラムの構造と解釈)その208

4.3.3 amb 評価器の実装 問題を解いていく前に、先に4.3.3節に進み amb 評価器を実装する。 以下が4.1.7節の評価器をベースにして、4.3.3節の解説に基づき実装した amb 評価器。 (define true #t) (define false #f) ;; 基盤の apply への参照を apply-in-underlying-scheme へ退避させる(こうすることで、基盤…続きを読む