開発環境
- OS X Lion - Apple(OS)
- Emacs、BBEdit - Bare Bones Software, Inc. (Text Editor)
- プログラミング言語: MIT/GNU Scheme
計算機プログラムの構造と解釈(Gerald Jay Sussman(原著)、Julie Sussman(原著)、Harold Abelson(原著)、和田 英一(翻訳)、ピアソンエデュケーション、原書: Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)(SICP))の3(標準部品化力, オブジェクトおよび状態)、3.5(ストリーム)、3.5.1(ストリームは遅延リスト)、ストリームの実装の働き、delayとforceの実装、問題 3.53、問題 3.54、問題 3.55を解いてみる。
その他参考書籍
問題 3.53
定義するストリームの要素は1, 2, 4, 8, 16, 32, …(n=0のとき1, n番目: 2 * (n - 1 番目))
問題 3.54
コード(BBEdit)
sample.scm
(define ones (cons-stream 1 ones)) (define (mul-streams s1 s2) (stream-map * s1 s2)) (define factorials (cons-stream 1 (mul-streams factorials (add-stream integers ones))))
問題 3.55
コード(BBEdit)
sample.scm
(define (partial-sums stream) (cons-stream (stream-car stream) (ad-streams (stream-cdr stream) (partial-sums stream))))
0 コメント:
コメントを投稿