2010-03-26から1日間の記事一覧

SICP問題4.22

式と環境をとるevalを分けた超循環評価器。 手続き analyze は式だけを取る。これは構文解析を実施し、解析された式を実行する 教科書の定義に加えてletを組み込む。 ;; 4.1.7 - 以降 ;; 評価器実行用に超循環のapplyを定義する前に定義しておく (define app…

SICP問題4.21

再帰手続きをletrec(やdefineさえ)使わずに指定する。次の式は再帰的な階乗手続きを作用させ、10の階乗を計算する ((lambda (n) ((lambda (fact) (fact fact n)) (lambda (ft k) (if (= k 1) 1 (* k (ft ft (- k 1))))))) 10) a. (式を評価することで)これが…

SICP問題4.20

a. letrec式をlet式に変換し、導出された式として実装する (define (letrec? exp) (tagged-list? exp 'letrec)) (define (letrec-parameters exp) (cadr exp)) (define (letrec-body exp) (cddr exp)) (define (letrec->let exp) (let ((vars (map (lambda (…

今日の夕飯

何故か今日も家で飲み会。 今日は全て妻作。 鶏軟骨炒め 鶏の唐揚チリソース添え ミックスナッツ さつま揚げ ブラジルのソーセージ ミャンマーのミックスナッツ