RosettaCodeData/Task/Y-combinator/Scala/y-combinator-2.scala
2023-07-01 13:44:08 -04:00

5 lines
215 B
Scala

val fac: Int => Int = Y[Int, Int](f => i => if (i <= 0) 1 else f(i - 1) * i)
fac(6) //> res0: Int = 720
val fib: Int => Int = Y[Int, Int](f => i => if (i < 2) i else f(i - 1) + f(i - 2))
fib(6) //> res1: Int = 8