RosettaCodeData/Task/Y-combinator/Lang/y-combinator-2.lang

14 lines
242 B
Text
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
fp.fac = (fp.func) -> {
fp.retFunc = (fp.func, $n) -> {
return parser.op($n < 2?1:$n * fp.func($n - 1))
}
return fn.combAN(fp.retFunc, fp.func)
}
# Apply Y combinator
fp.facY = fp.combY(fp.fac)
# Use function
fn.println(fp.facY(10))