<script> Constants:
00: "A"
01: Fn(foo)
02: "B"
03: "C"
04: Fn(init new())
05: Fn()
06: Fn(foo)
<script> Code:
00 (ln 1): Constant(0: "A")
01 (ln 1): Load(Module, Class("Object"))
02 (ln 1): Class(0 fields)
03 (ln 1): Store(Module)
04 (ln 1): Pop
05 (ln 4): Closure(1, [])
06 (ln 4): Load(Module, Null)
07 (ln 4): Method(instance, foo)
08 (ln 7): Constant(2: "B")
09 (ln 7): Load(Module, Null)
10 (ln 7): Class(0 fields)
11 (ln 7): Store(Module)
12 (ln 7): Pop
13 (ln 9): Constant(3: "C")
14 (ln 9): Load(Module, Null)
15 (ln 9): Class(0 fields)
16 (ln 9): Store(Module)
17 (ln 9): Pop
18 (ln 10): Closure(4, [])
19 (ln 10): Load(Module, Null)
20 (ln 10): Method(instance, init new())
21 (ln 10): Closure(5, [])
22 (ln 10): Load(Module, Null)
23 (ln 10): Method(static, new())
24 (ln 15): Closure(6, [])
25 (ln 15): Load(Module, Null)
26 (ln 15): Method(instance, foo)
27 (ln 18): Load(Module, Null)
28 (ln 18): Call(new())
29 (ln 18): Call(foo)
30 (ln 18): Pop
31 (ln 21): EndModule
32 (ln 21): Return
33 (ln 21): End
foo Constants:
00: "A.foo"
foo Code:
00 (ln 3): Load(Module, Class("System"))
01 (ln 3): Constant(0: "A.foo")
02 (ln 3): Call(print(_))
03 (ln 3): Pop
04 (ln 4): Null
05 (ln 4): Return
06 (ln 4): End
init new() Code:
00 (ln 10): Load(Local, 0)
01 (ln 10): Return
02 (ln 10): End
 Code:
00 (ln 10): Construct
01 (ln 10): Call(init new())
02 (ln 10): Return
03 (ln 10): End
foo Constants:
00: "C.foo"
01: Null
foo Code:
00 (ln 13): Load(Module, Class("System"))
01 (ln 13): Constant(0: "C.foo")
02 (ln 13): Call(print(_))
03 (ln 13): Pop
04 (ln 14): Load(Local, 0)
05 (ln 14): CallSuper(foo)
06 (ln 14): Pop
07 (ln 15): Null
08 (ln 15): Return
09 (ln 15): End
