Skip to content

Instantly share code, notes, and snippets.

@jcoglan
Created January 30, 2009 15:07
Show Gist options
  • Save jcoglan/55102 to your computer and use it in GitHub Desktop.
Save jcoglan/55102 to your computer and use it in GitHub Desktop.
Testing with MRI, using instance_eval
-------------------------------------
jcoglan@fournier:~/projects/heist$ ruby test/test_heist.rb
Loaded suite test/test_heist
Started
Type of if() function: Heist::Runtime::MetaFunction
Application mode: applicative
-607246068 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607247168 --> CONS: x, ALT: (- x)
-607249128 --> CONS: false, ALT: true
-607249128 --> CONS: false, ALT: true
-607247168 --> CONS: x, ALT: (- x)
-607246068 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607250648 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607253568 --> CONS: x, ALT: (- x)
-607255528 --> CONS: false, ALT: true
-607255528 --> CONS: false, ALT: true
-607253568 --> CONS: x, ALT: (- x)
-607250648 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607256838 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607259758 --> CONS: x, ALT: (- x)
-607261718 --> CONS: false, ALT: true
-607261718 --> CONS: false, ALT: true
-607259758 --> CONS: x, ALT: (- x)
-607256838 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607263028 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607265948 --> CONS: x, ALT: (- x)
-607267908 --> CONS: false, ALT: true
-607267908 --> CONS: false, ALT: true
-607265948 --> CONS: x, ALT: (- x)
-607263028 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607269218 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607272138 --> CONS: x, ALT: (- x)
-607274098 --> CONS: false, ALT: true
-607274098 --> CONS: false, ALT: true
-607272138 --> CONS: x, ALT: (- x)
-607269218 --> CONS: guess, ALT: (sqrt-iter (improve guess))
-607244038 --> CONS: x, ALT: (- x)
-607276198 --> CONS: false, ALT: true
-607276198 --> CONS: false, ALT: true
-607244038 --> CONS: x, ALT: (- x)
-607277828 --> CONS: false, ALT: true
-607277828 --> CONS: false, ALT: true
...
Finished in 0.140342 seconds.
3 tests, 18 assertions, 0 failures, 0 errors
Testing with RBX, using instance_eval
------------------------------------
jcoglan@fournier:~/projects/heist$ rbx test/test_heist.rb
Loaded suite test/test_heist
Started
Type of if() function: Heist::Runtime::MetaFunction
Application mode: applicative
2502 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2506 --> CONS: x, ALT: (- x)
2510 --> CONS: false, ALT: true
2510 --> CONS: false, ALT: true
2510 --> CONS: false, ALT: true
E..
Finished in 1.774000 seconds.
1) Error:
test_arithmetic(#<Class:0x9be>):
NoMethodError: No method '<' on an instance of TrueClass.
kernel/delta/kernel.rb:55:in `method_missing'
(eval):251:in `initialize'
/home/jcoglan/projects/heist/lib/runtime/function.rb:20:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
/home/jcoglan/projects/heist/lib/runtime/function.rb:22:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
(eval):138:in `initialize'
/home/jcoglan/projects/heist/lib/runtime/function.rb:36:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
/home/jcoglan/projects/heist/lib/runtime/function.rb:22:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
/home/jcoglan/projects/heist/lib/runtime/function.rb:22:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
./test/../lib/heist.rb:33:in `value_of'
/home/jcoglan/projects/heist/lib/runtime/function.rb:18:in `call'
kernel/common/enumerable.rb:688:in `each_with_index'
kernel/bootstrap/array.rb:48:in `each'
kernel/common/enumerable.rb:688:in `each_with_index'
/home/jcoglan/projects/heist/lib/runtime/function.rb:15:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
./test/../lib/heist.rb:33:in `value_of'
/home/jcoglan/projects/heist/lib/runtime/function.rb:18:in `call'
kernel/common/enumerable.rb:688:in `each_with_index'
kernel/bootstrap/array.rb:48:in `each'
kernel/common/enumerable.rb:688:in `each_with_index'
/home/jcoglan/projects/heist/lib/runtime/function.rb:15:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
./test/../lib/heist.rb:33:in `value_of'
/home/jcoglan/projects/heist/lib/runtime/function.rb:18:in `call'
kernel/common/enumerable.rb:688:in `each_with_index'
kernel/bootstrap/array.rb:48:in `each'
kernel/common/enumerable.rb:688:in `each_with_index'
/home/jcoglan/projects/heist/lib/runtime/function.rb:15:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
./test/../lib/heist.rb:33:in `value_of'
/home/jcoglan/projects/heist/lib/runtime/function.rb:18:in `call'
kernel/common/enumerable.rb:688:in `each_with_index'
kernel/bootstrap/array.rb:48:in `each'
kernel/common/enumerable.rb:688:in `each_with_index'
/home/jcoglan/projects/heist/lib/runtime/function.rb:15:in `call'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:33:in `expand!'
/home/jcoglan/projects/heist/lib/runtime/frame.rb:12:in `evaluate'
/home/jcoglan/projects/heist/lib/runtime/list.rb:8:in `eval'
./test/../lib/heist.rb:33:in `value_of'
/home/jcoglan/projects/heist/lib/parser/nodes.rb:7:in `eval'
kernel/bootstrap/array.rb:61:in `map'
/home/jcoglan/projects/heist/lib/parser/nodes.rb:7:in `eval'
/home/jcoglan/projects/heist/lib/runtime/scope.rb:65:in `run'
(__FORWARDABLE__):6:in `run'
test/test_heist.rb:28
kernel/common/block_environment.rb:71:in `call_on_instance'
kernel/common/delegated_method.rb:15:in `call'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:438:in `run'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:413:in `run_test_suites'
kernel/bootstrap/array.rb:48:in `each'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:407:in `run_test_suites'
kernel/bootstrap/array.rb:48:in `each'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:406:in `run_test_suites'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:386:in `run'
/home/jcoglan/projects/rubinius/lib/minitest/unit.rb:330:in `autorun'
kernel/loader.rb:321
3 tests, 16 assertions, 0 failures, 1 errors, 0 skips
An exception occurred inside an at_exit handler:
Tried to use non-reference value 0xa as type String (49) (TypeError)
Backtrace:
Exception(SystemExit)#initialize at kernel/common/exception.rb:8
SystemExit#initialize at kernel/common/kernel.rb:774
Kernel(Class)#exit at kernel/common/kernel.rb:111
MiniTest::Unit.autorun {} at /home/jcoglan/projects/rubinius/lib/minitest/unit.rb:331
Object#__script__ at kernel/loader.rb:328
Testing with RBX, with code inline
----------------------------------
jcoglan@fournier:~/projects/heist$ rbx test/test_heist.rb
Loaded suite test/test_heist
Started
Type of if() function: Heist::Runtime::MetaFunction
Application mode: applicative
2564 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2568 --> CONS: x, ALT: (- x)
2572 --> CONS: false, ALT: true
2572 --> CONS: false, ALT: true
2568 --> CONS: x, ALT: (- x)
2564 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2582 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2586 --> CONS: x, ALT: (- x)
2590 --> CONS: false, ALT: true
2590 --> CONS: false, ALT: true
2586 --> CONS: x, ALT: (- x)
2582 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2600 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2604 --> CONS: x, ALT: (- x)
2608 --> CONS: false, ALT: true
2608 --> CONS: false, ALT: true
2604 --> CONS: x, ALT: (- x)
2600 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2618 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2622 --> CONS: x, ALT: (- x)
2626 --> CONS: false, ALT: true
2626 --> CONS: false, ALT: true
2622 --> CONS: x, ALT: (- x)
2618 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2636 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2640 --> CONS: x, ALT: (- x)
2644 --> CONS: false, ALT: true
2644 --> CONS: false, ALT: true
2640 --> CONS: x, ALT: (- x)
2636 --> CONS: guess, ALT: (sqrt-iter (improve guess))
2654 --> CONS: x, ALT: (- x)
2658 --> CONS: false, ALT: true
2658 --> CONS: false, ALT: true
2654 --> CONS: x, ALT: (- x)
2666 --> CONS: false, ALT: true
2666 --> CONS: false, ALT: true
...
Finished in 1.598433 seconds.
3 tests, 18 assertions, 0 failures, 0 errors, 0 skips
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment