X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=week3.mdwn;h=d9c536112218408d951f817641c7d8a5d45ac08f;hp=a1e79f5c0538e4d913d8e3e6360f908c8590cdfc;hb=d579bd1bc6e7154796e44bcabde66bcbf5ecb45b;hpb=e9421d05c554e8abfa13c11eb62789d6c0a19d59 diff --git a/week3.mdwn b/week3.mdwn index a1e79f5c..d9c53611 100644 --- a/week3.mdwn +++ b/week3.mdwn @@ -333,16 +333,14 @@ Isn't that cool? ##Okay, then give me a fixed-point combinator, already!## -Many fixed-point combinators have been discovered. (And given a fixed-point combinator, there are ways to use it as a model to build infinitely many more, non-equivalent fixed-point combinators.) +Many fixed-point combinators have been discovered. (And some fixed-point combinators give us models for building infinitely many more, non-equivalent fixed-point combinators.) Two of the simplest:
Θ′ ≡ (\u f. f (\n. u u f n)) (\u f. f (\n. u u f n))
 Y′ ≡ \f. (\u. f (\n. u u n)) (\u. f (\n. u u n))
-Θ′ has the advantage that f (Θ′ f) really *reduces to* Θ′ f. - -f (Y′ f) is only convertible with Y′ f; that is, there's a common formula they both reduce to. For most purposes, though, either will do. +Θ′ has the advantage that f (Θ′ f) really *reduces to* Θ′ f. Whereas f (Y′ f) is only *convertible with* Y′ f; that is, there's a common formula they both reduce to. For most purposes, though, either will do. You may notice that both of these formulas have eta-redexes inside them: why can't we simplify the two `\n. u u f n` inside Θ′ to just `u u f`? And similarly for Y′?