Fixed-point combinators in JavaScript: Memoizing recursive functions It comes as a surprise to many programmers that it is possible to express a "recursive" function like factorial without using recursion or iteration. The technique involved is subtle but powerful: the recursive function is computed as the "fixed point" of a non-recursive function. To compute the fixed point, we can use the Y comb