From d068f0b3c11348a50c18af1ee3b0d2e5f38c4faf Mon Sep 17 00:00:00 2001 From: Matthew Sotoudeh Date: Fri, 17 May 2024 15:57:30 -0700 Subject: lua benchmarks --- lua_benchmark/tests/Lua-Benchmarks/ack.lua | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 lua_benchmark/tests/Lua-Benchmarks/ack.lua (limited to 'lua_benchmark/tests/Lua-Benchmarks/ack.lua') diff --git a/lua_benchmark/tests/Lua-Benchmarks/ack.lua b/lua_benchmark/tests/Lua-Benchmarks/ack.lua new file mode 100644 index 0000000..3b41935 --- /dev/null +++ b/lua_benchmark/tests/Lua-Benchmarks/ack.lua @@ -0,0 +1,16 @@ +-- $Id: ackermann.lua,v 1.5 2000/12/09 20:07:43 doug Exp $ +-- http://www.bagley.org/~doug/shootout/ + +local function Ack(M, N) + if (M == 0) then + return N + 1 + end + if (N == 0) then + return Ack(M - 1, 1) + end + return Ack(M - 1, Ack(M, (N - 1))) +end + +N = tonumber((arg and arg[1])) or 3 +M = tonumber((arg and arg[2])) or 8 +print(string.format("Ack(%d, %d) = %d\n", N, M, Ack(N,M))) -- cgit v1.2.3