問題2.75、問題2.76 – SICP(計算機プログラムの構造と解釈)その86
2009年01月30日
問題2.75
(define (make-from-mag-ang r a) (define (dispatch op) (cond ((eq? op 'real-part) (* r (cos a))) ((eq? op 'imag-part) (* r (sin a))) ((eq? op 'mgnitude) r) ((eq? op 'angle) a) (else (error "Unknown op -- MAKE-FROM-MAG-ANG" op)))) dispatch)
問題2.76
新しい型を追加する時 | 新しい演算を追加する時 | |
---|---|---|
明白な振り分けを持つ汎用演算 | 全ての手続きを変更 | なし |
データ主導流 | 新しく追加する型の パッケージを作る |
なし |
メッセージパッシング流 | なし | 全ての型のデータオブジェクトに 新しい演算を追加 |
新しい型が絶えず追加されるシステムには
メッセージパッシング流が最適
新しい演算が絶えず追加されるシステムには
データ主導流が最適
計算機プログラムの構造と解釈
posted with amazlet at 08.11.07
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
ピアソンエデュケーション
売り上げランキング: 6542