RosettaCodeData/Task/Y-combinator/JavaScript/y-combinator-8.js

3 lines
95 B
JavaScript

var Y = f => (x => x(x))(y => f(x => y(y)(x)));
var fac = Y(f => n => n > 1 ? n * f(n-1) : 1);