|
@ -9,8 +9,8 @@ o = Object.new(foo:42, bar: 666) => < |
|
|
o.foo => 42 |
|
|
o.foo => 42 |
|
|
Point.new() => <<Point>> |
|
|
Point.new() => <<Point>> |
|
|
Point.new(x: 3, y: 4) => <<Point>> |
|
|
Point.new(x: 3, y: 4) => <<Point>> |
|
|
| y: 4 |
|
|
|
|
|
| x: 3 |
|
|
| x: 3 |
|
|
|
|
|
| y: 4 |
|
|
twice 21 is 42 |
|
|
twice 21 is 42 |
|
|
double => <<Closure>> |
|
|
double => <<Closure>> |
|
|
| environment: nil |
|
|
| environment: nil |
|
@ -27,28 +27,39 @@ double => <> |
|
|
Point.new(x:3, y:4).magnitude() => 5.000000 |
|
|
Point.new(x:3, y:4).magnitude() => 5.000000 |
|
|
<<?>> |
|
|
<<?>> |
|
|
| self: nil => |
|
|
| self: nil => |
|
|
| self: nil |
|
|
|
|
|
| n: 39 |
|
|
| n: 39 |
|
|
|
|
|
| self: nil |
|
|
| 0: 40 |
|
|
| 0: 40 |
|
|
40 |
|
|
40 |
|
|
<<?>> |
|
|
<<?>> |
|
|
| self: nil => |
|
|
| self: nil => |
|
|
| self: nil |
|
|
|
|
|
| n: 40 |
|
|
| n: 40 |
|
|
|
|
|
| self: nil |
|
|
| 0: 40 |
|
|
| 0: 40 |
|
|
41 |
|
|
41 |
|
|
<<?>> |
|
|
<<?>> |
|
|
| self: nil => |
|
|
| self: nil => |
|
|
| self: nil |
|
|
|
|
|
| n: 41 |
|
|
| n: 41 |
|
|
|
|
|
| self: nil |
|
|
| 0: 40 |
|
|
| 0: 40 |
|
|
42 |
|
|
42 |
|
|
<<?>> |
|
|
<<?>> |
|
|
| self: nil => |
|
|
| self: nil => |
|
|
| self: nil |
|
|
|
|
|
| n: 42 |
|
|
| n: 42 |
|
|
|
|
|
| self: nil |
|
|
| 0: 40 |
|
|
| 0: 40 |
|
|
43 |
|
|
43 |
|
|
|
|
|
<Object> |
|
|
|
|
|
| __codeon__: <primitive Object.codeOn> |
|
|
|
|
|
| __eval__: <primitive Object.__eval__> |
|
|
|
|
|
| __name__: Object |
|
|
|
|
|
| allKeys: <primitive Object.allKeys> |
|
|
|
|
|
| keys: <primitive Object.keys> |
|
|
|
|
|
| length: <primitive Object.length> |
|
|
|
|
|
| new: <primitive Object.new> |
|
|
|
|
|
| pop: <primitive Object.pop> |
|
|
|
|
|
| push: <primitive Object.push> |
|
|
|
|
|
| sorted: <primitive Object.sorted> |
|
|
nil no |
|
|
nil no |
|
|
1 yes |
|
|
1 yes |
|
|
hello yes |
|
|
hello yes |
|
@ -70,8 +81,8 @@ nil |
|
|
<Object> |
|
|
<Object> |
|
|
nil |
|
|
nil |
|
|
[KEY: __delegate__ |
|
|
[KEY: __delegate__ |
|
|
KEY: y |
|
|
|
|
|
KEY: x |
|
|
KEY: x |
|
|
|
|
|
KEY: y |
|
|
] |
|
|
] |
|
|
Symbol |
|
|
Symbol |
|
|
<Symbol> |
|
|
<Symbol> |
|
@ -147,14 +158,13 @@ MACRO table < |
|
|
| | | body: <<Object>> |
|
|
| | | body: <<Object>> |
|
|
| | | | 0: <<Call>> |
|
|
| | | | 0: <<Call>> |
|
|
| | | | | arguments: <<Object>> |
|
|
| | | | | arguments: <<Object>> |
|
|
| | | | | | 0: MACRO EVAL test with |
|
|
|
|
|
|
|
|
| | | | | | 0: "MACRO EVAL test with " |
|
|
| | | | | | 1: <<GetVar>> |
|
|
| | | | | | 1: <<GetVar>> |
|
|
| | | | | | | name: x |
|
|
| | | | | | | name: x |
|
|
| | | | | | 2: and |
|
|
|
|
|
|
|
|
| | | | | | 2: " and " |
|
|
| | | | | | 3: <<GetVar>> |
|
|
| | | | | | 3: <<GetVar>> |
|
|
| | | | | | | name: y |
|
|
| | | | | | | name: y |
|
|
| | | | | | 4: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| | | | | | 4: "\n" |
|
|
| | | | | function: <<GetVar>> |
|
|
| | | | | function: <<GetVar>> |
|
|
| | | | | | name: print |
|
|
| | | | | | name: print |
|
|
| | | | 1: <<Unyop>> |
|
|
| | | | 1: <<Unyop>> |
|
@ -163,13 +173,12 @@ MACRO table < |
|
|
| | | | | | body: <<Object>> |
|
|
| | | | | | body: <<Object>> |
|
|
| | | | | | | 0: <<Call>> |
|
|
| | | | | | | 0: <<Call>> |
|
|
| | | | | | | | arguments: <<Object>> |
|
|
| | | | | | | | arguments: <<Object>> |
|
|
| | | | | | | | | 0: REPLACEMENT |
|
|
|
|
|
|
|
|
| | | | | | | | | 0: "REPLACEMENT " |
|
|
| | | | | | | | | 1: <<Unyop>> |
|
|
| | | | | | | | | 1: <<Unyop>> |
|
|
| | | | | | | | | | operation: 4 |
|
|
| | | | | | | | | | operation: 4 |
|
|
| | | | | | | | | | 0: <<GetVar>> |
|
|
| | | | | | | | | | 0: <<GetVar>> |
|
|
| | | | | | | | | | | name: x |
|
|
| | | | | | | | | | | name: x |
|
|
| | | | | | | | | 2: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| | | | | | | | | 2: "\n" |
|
|
| | | | | | | | function: <<GetVar>> |
|
|
| | | | | | | | function: <<GetVar>> |
|
|
| | | | | | | | | name: print |
|
|
| | | | | | | | | name: print |
|
|
| | | | | | | 1: <<Unyop>> |
|
|
| | | | | | | 1: <<Unyop>> |
|
@ -193,7 +202,7 @@ AST eval => 42 |
|
|
65 66 67 68 69 |
|
|
65 66 67 68 69 |
|
|
1 two 3 four |
|
|
1 two 3 four |
|
|
|
|
|
|
|
|
test.txt:346: *: illegal operand types Integer and String |
|
|
|
|
|
|
|
|
test.txt:381: *: illegal operand types Integer and String |
|
|
11: n * factorial(n - 1) |
|
|
11: n * factorial(n - 1) |
|
|
10: if (n < 2) "1" else n * factorial(n - 1) |
|
|
10: if (n < 2) "1" else n * factorial(n - 1) |
|
|
9: factorial(n - 1) |
|
|
9: factorial(n - 1) |
|
|