diff options
Diffstat (limited to 'tests/manual/v4/fun.3.js')
-rw-r--r-- | tests/manual/v4/fun.3.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/manual/v4/fun.3.js b/tests/manual/v4/fun.3.js new file mode 100644 index 0000000000..5add270f35 --- /dev/null +++ b/tests/manual/v4/fun.3.js @@ -0,0 +1,17 @@ + +function fix(f) { + var k = function (x) { + return f(function (z) { return x(x)(z) }) + } + return k(k) +} + +var F = function (f) { + return function (n) { + return n == 0 ? 1 : n * f(n - 1) + } +} + +var fact = fix(F) + +print("the factorial of 12 is", fact(12)) |