c{0: 0 (((1 string-address)) <- ((new)) ab) -- nil c{0: 1 (((2 string-address)) <- ((new)) aa) -- nil c{0: 2 (((3 boolean)) <- ((string-equal)) ((1 string-address)) ((2 string-address))) -- nil c{1: 0 ✓ (((1 string-address)) <- ((new)) ab) c{1: 1 ✓ (((2 string-address)) <- ((new)) aa) c{1: 2 ✓ (((3 boolean)) <- ((string-equal)) ((1 string-address)) ((2 string-address))) cn0: convert-names in main cn0: (((1 string-address)) <- ((new)) ab) nil nil cn0: checking arg ab cn0: checking oarg ((1 string-address)) maybe-add: ((1 string-address)) cn0: (((2 string-address)) <- ((new)) aa) nil nil cn0: checking arg aa cn0: checking oarg ((2 string-address)) maybe-add: ((2 string-address)) cn0: (((3 boolean)) <- ((string-equal)) ((1 string-address)) ((2 string-address))) nil nil cn0: checking arg ((1 string-address)) maybe-add: ((1 string-address)) cn0: checking arg ((2 string-address)) maybe-add: ((2 string-address)) cn0: checking oarg ((3 boolean)) maybe-add: ((3 boolean)) cn1: (((1 string-address)) <- ((new)) ab) cn1: (((2 string-address)) <- ((new)) aa) cn1: (((3 boolean)) <- ((string-equal)) ((1 string-address)) ((2 string-address))) schedule: main run: main 0: (((1 string-address)) <- ((new)) ab) run: main 0: 1000 => ((1 string-address)) mem: ((1 string-address)): 1 <= 1000 run: main 1: (((2 string-address)) <- ((new)) aa) run: main 1: 1003 => ((2 string-address)) mem: ((2 string-address)): 2 <= 1003 run: main 2: (((3 boolean)) <- ((string-equal)) ((1 string-address)) ((2 string-address))) mem: ((1 string-address)) => 1000 mem: ((2 string-address)) => 1003 run: string-equal/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) run: string-equal/main 0: 1006 => ((default-space space-address)) run: string-equal/main 1: (((1 string-address)) <- ((next-input))) arg: nil 0 (1000 1003) run: string-equal/main 1: 1000 => ((1 string-address)) mem: ((1 string-address)): 1008 <= 1000 run: string-equal/main 2: (((2 integer)) <- ((length)) ((1 string-address) (deref))) array-len: ((1 string-address) (deref)) mem: ((1000 integer) (raw)) => 2 run: string-equal/main 2: 2 => ((2 integer)) mem: ((2 integer)): 1009 <= 2 run: string-equal/main 3: (((3 string-address)) <- ((next-input))) arg: nil 1 (1000 1003) run: string-equal/main 3: 1003 => ((3 string-address)) mem: ((3 string-address)): 1010 <= 1003 run: string-equal/main 4: (((4 integer)) <- ((length)) ((3 string-address) (deref))) array-len: ((3 string-address) (deref)) mem: ((1003 integer) (raw)) => 2 run: string-equal/main 4: 2 => ((4 integer)) mem: ((4 integer)): 1011 <= 2 run: string-equal/main 5: (((5 boolean)) <- ((equal)) ((2 integer)) ((4 integer))) mem: ((2 integer)) => 2 mem: ((4 integer)) => 2 run: string-equal/main 5: t => ((5 boolean)) mem: ((5 boolean)): 1012 <= t run: string-equal/main 6: (((jump-if)) ((5 boolean)) ((1 offset))) mem: ((5 boolean)) => t run: string-equal/main 8: (((6 integer)) <- ((copy)) ((0 literal))) run: string-equal/main 8: 0 => ((6 integer)) mem: ((6 integer)): 1013 <= 0 run: string-equal/main 9: (((7 boolean)) <- ((greater-or-equal)) ((6 integer)) ((2 integer))) mem: ((6 integer)) => 0 mem: ((2 integer)) => 2 run: string-equal/main 9: nil => ((7 boolean)) mem: ((7 boolean)): 1014 <= nil run: string-equal/main 10: (((jump-if)) ((7 boolean)) ((7 offset))) mem: ((7 boolean)) => nil run: string-equal/main 11: (((8 byte)) <- ((index)) ((1 string-address) (deref)) ((6 integer))) mem: ((6 integer)) => 0 array-len: ((1000 string) (raw)) mem: ((1000 integer) (raw)) => 2 mem: ((1001 byte) (raw)) => a run: string-equal/main 11: #\a => ((8 byte)) mem: ((8 byte)): 1015 <= #\a run: string-equal/main 12: (((9 byte)) <- ((index)) ((3 string-address) (deref)) ((6 integer))) mem: ((6 integer)) => 0 array-len: ((1003 string) (raw)) mem: ((1003 integer) (raw)) => 2 mem: ((1004 byte) (raw)) => a run: string-equal/main 12: #\a => ((9 byte)) mem: ((9 byte)): 1016 <= #\a run: string-equal/main 13: (((10 boolean)) <- ((equal)) ((8 byte)) ((9 byte))) mem: ((8 byte)) => a mem: ((9 byte)) => a run: string-equal/main 13: t => ((10 boolean)) mem: ((10 boolean)): 1017 <= t run: string-equal/main 14: (((jump-if)) ((10 boolean)) ((1 offset))) mem: ((10 boolean)) => t run: string-equal/main 16: (((6 integer)) <- ((add)) ((6 integer)) ((1 literal))) mem: ((6 integer)) => 0 run: string-equal/main 16: 1 => ((6 integer)) mem: ((6 integer)): 1013 <= 1 run: string-equal/main 17: (((jump)) ((-9 offset))) run: string-equal/main 9: (((7 boolean)) <- ((greater-or-equal)) ((6 integer)) ((2 integer))) mem: ((6 integer)) => 1 mem: ((2 integer)) => 2 run: string-equal/main 9: nil => ((7 boolean)) mem: ((7 boolean)): 1014 <= nil run: string-equal/main 10: (((jump-if)) ((7 boolean)) ((7 offset))) mem: ((7 boolean)) => nil run: string-equal/main 11: (((8 byte)) <- ((index)) ((1 string-address) (deref)) ((6 integer))) mem: ((6 integer)) => 1 array-len: ((1000 string) (raw)) mem: ((1000 integer) (raw)) => 2 mem: ((1002 byte) (raw)) => b run: string-equal/main 11: #\b => ((8 byte)) mem: ((8 byte)): 1015 <= #\b run: string-equal/main 12: (((9 byte)) <- ((index)) ((3 string-address) (deref)) ((6 integer))) mem: ((6 integer)) => 1 array-len: ((1003 string) (raw)) mem: ((1003 integer) (raw)) => 2 mem: ((1005 byte) (raw)) => a run: string-equal/main 12: #\a => ((9 byte)) mem: ((9 byte)): 1016 <= #\a run: string-equal/main 13: (((10 boolean)) <- ((equal)) ((8 byte)) ((9 byte))) mem: ((8 byte)) => b mem: ((9 byte)) => a run: string-equal/main 13: nil => ((10 boolean)) mem: ((10 boolean)): 1017 <= nil run: string-equal/main 14: (((jump-if)) ((10 boolean)) ((1 offset))) mem: ((10 boolean)) => nil run: string-equal/main 15: (((reply)) ((nil literal))) run: main 2: nil => ((3 boolean)) mem: ((3 boolean)): 3 <= nil schedule: done with routine nil