fcn almost_factorial(f){ fcn(n,f){ if(n<=1) 1 else n*f(n-1) }.fp1(f) } Y(almost_factorial)(6).println(); [0..10].apply(Y(almost_factorial)).println();