diff options
Diffstat (limited to 'source3/lua-5.1.4/test/factorial.lua')
-rw-r--r-- | source3/lua-5.1.4/test/factorial.lua | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/source3/lua-5.1.4/test/factorial.lua b/source3/lua-5.1.4/test/factorial.lua deleted file mode 100644 index 7c4cf0fa45..0000000000 --- a/source3/lua-5.1.4/test/factorial.lua +++ /dev/null @@ -1,32 +0,0 @@ --- function closures are powerful - --- traditional fixed-point operator from functional programming -Y = function (g) - local a = function (f) return f(f) end - return a(function (f) - return g(function (x) - local c=f(f) - return c(x) - end) - end) -end - - --- factorial without recursion -F = function (f) - return function (n) - if n == 0 then return 1 - else return n*f(n-1) end - end - end - -factorial = Y(F) -- factorial is the fixed point of F - --- now test it -function test(x) - io.write(x,"! = ",factorial(x),"\n") -end - -for n=0,16 do - test(n) -end |