質問

固定点の組み合わせが何に使われているかを知るために、私は自分のものを書きました。しかし、厳密に匿名の関数でそれを書く代わりに、 ウィキペディアの例, 、Defineを使用しました。

(define combine (lambda (functional)
                  (functional (lambda args (apply (combine functional) args))))

私はこれを、要因とフィボナッチの機能でテストしましたが、それは機能しているようです。これは、固定点コンビネーターの正式な定義を満たしていますか?

役に立ちましたか?

解決

答えはノーです 前の回答で言及されたブログ, 、それはの定義さえ満たしていません 組み合わせ, 、「Combine」は自由変数であるためです。

他のヒント

編集:チェスウェブまたは他の誰かが彼の答えを裏付けている間、一時的に彼の答えは正しいと考え、これは間違っています。


答えはイエスのようです。どうやらまったく同じ組み合わせが表示されます ここ, 、ページの途中:

(define Y
    (lambda (f)
      (f (lambda (x) ((Y f) x)))))
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top