2008-07-26から1日間の記事一覧

(sicp50)m4.9のdoの修正と4.10

4.10 好きな制御構造の作成 dotimesを作ってみた。(何か大げさな様な気もするけど) ;;使用例 (let ((fact 1)) (dotimes (e 10 fact) (set! fact (* fact (+ 1 e))))) ;; gosh> 3628800 named-letを使った再帰に置き換えて定義する。 (define (run-dotimes …

(sicp49)m4.8,m4.9

合っているか自信無いです>< 4.8named-letを作る (define (named-let->definition exp) ;(letを外した式をもらう。 (let ((name (car exp)) (arguments (cadr exp)) (body (caddr exp))) (let ((vars (map car arguments)) (exps (map cadr arguments))) (…