タグ

ブックマーク / sheepman.sakura.ne.jp (1)

  • 羊堂本舗 脳ざらし紀行 (2003-10-22)

    _ [ネット] Fの不動点 ラムダ式fを受けとったら、ラムダ式を返す次のようなプロシージャFを定義します。 (define F (lambda (f) (lambda (n) (if (= n 0) 1 (* n (f (- n 1))))))) とりあえず簡単な例で計算してみましょう。Fに常に5を返すラムダ式を渡して、返ってきたラムダ式に3を渡してみましょう。 ((F (lambda (n) 5)) 3) いくらになるでしょうか。 ;; => (* 3 (f (- 3 1))) => 15 15になりました。そして、次のようなプロシージャ fを考えます。 (define f (lambda (s) (F (lambda (x) ((s s) x))))) fはラムダ式を受けとるようなラムダ式sを受けとって、ラムダ式を生成した後、それをFに渡します。 さて、次のような単純なプロシージャhを

  • 1