diff options
Diffstat (limited to 'sample/gctest2.rb')
-rw-r--r-- | sample/gctest2.rb | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/sample/gctest2.rb b/sample/gctest2.rb deleted file mode 100644 index 851d14f217..0000000000 --- a/sample/gctest2.rb +++ /dev/null @@ -1,71 +0,0 @@ -# GC stress test -def cons(car, cdr) - car::cdr -end - -def car(x) - x.car -end - -def cdr(x) - x.cdr -end - -def reverse1(x, y) - if x == nil then - y - else - reverse1(cdr(x), cons(car(x), y)) - end -end - -def reverse(x) - reverse1(x, nil) -end - -def ints(low, up) - if low > up - nil - else - cons(low, ints(low+1, up)) - end -end - -def print_int_list(x) - if x == nil - print("NIL\n") - else - print(car(x)) - if cdr(x) - print(", ") - print_int_list(cdr(x)) - else - print("\n") - end - end -end - -print("start\n") - -a = ints(1, 100) -print_int_list(a) -b = ints(1, 50) -print_int_list(b) -print_int_list(reverse(a)) -print_int_list(reverse(b)) -for i in 1 .. 100 - b = reverse(reverse(b)) -# print(i, ": ") -# print_int_list(b) -end -print("a: ") -print_int_list(a) -print("b: ") -print_int_list(b) -print("reverse(a): ") -print_int_list(reverse(a)) -print("reverse(b): ") -print_int_list(reverse(b)) -a = b = nil -print("finish\n") -GC.start() |