diff options
Diffstat (limited to 'tests/closure/tfib50.nim')
-rw-r--r-- | tests/closure/tfib50.nim | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/tests/closure/tfib50.nim b/tests/closure/tfib50.nim deleted file mode 100644 index 719aa3ad5..000000000 --- a/tests/closure/tfib50.nim +++ /dev/null @@ -1,22 +0,0 @@ -discard """ - output: "20365011074" -""" - -import tables - -proc memoize(f: proc (a: int64): int64): proc (a: int64): int64 = - var previous = initTable[int64, int64]() - return proc(i: int64): int64 = - if not previous.hasKey i: - previous[i] = f(i) - return previous[i] - -var fib: proc(a: int64): int64 - -fib = memoize(proc (i: int64): int64 = - if i == 0 or i == 1: - return 1 - return fib(i-1) + fib(i-2) -) - -echo fib(50) |