diff options
Diffstat (limited to 'trunk/benchmark/bm_so_ackermann.rb')
-rw-r--r-- | trunk/benchmark/bm_so_ackermann.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/trunk/benchmark/bm_so_ackermann.rb b/trunk/benchmark/bm_so_ackermann.rb new file mode 100644 index 0000000000..7db5be9050 --- /dev/null +++ b/trunk/benchmark/bm_so_ackermann.rb @@ -0,0 +1,19 @@ +#!/usr/bin/ruby +# -*- mode: ruby -*- +# $Id: ackermann-ruby.code,v 1.4 2004/11/13 07:40:41 bfulgham Exp $ +# http://www.bagley.org/~doug/shootout/ + +def ack(m, n) + if m == 0 then + n + 1 + elsif n == 0 then + ack(m - 1, 1) + else + ack(m - 1, ack(m, n - 1)) + end +end + +NUM = 9 +ack(3, NUM) + + |