Anonymous user
Y combinator: Difference between revisions
Undo revision 287262 by Kamilk (talk)
No edit summary |
|||
Line 3,144:
=={{header|Scala}}==
Credit goes to
<lang scala>def Y[A,
case class W(wf: W=>A=>B) {
def apply(w: W) = wf(w)
}
val g: W=>A=>B = w => f(w(w))(_)
g(W(g))
}</lang>
Example
<lang scala>val fac = Y[Int, Int](f => i => if (i <= 0) 1 else f(i - 1) * i)
|