c{0: 0 (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity))) -- nil
c{0: 1 (((1 channel-address)) <- ((init-channel)) ((3 literal))) -- nil
c{0: 2 (((2 integer) (routine)) <- ((fork-helper)) ((reader fn)) ((default-space space-address) (globals)) ((50 literal) (limit))) -- nil
c{1: 0 ✓ (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity)))
c{1: 1 ✓ (((1 channel-address)) <- ((init-channel)) ((3 literal)))
c{1: 2 ✓ (((2 integer) (routine)) <- ((fork-helper)) ((reader fn)) ((default-space space-address) (globals)) ((50 literal) (limit)))
c{0: 0 (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity))) -- nil
c{0: 1 (((x tagged-value)) ((1 channel-address) (space global)) <- ((read)) ((1 channel-address) (space global))) -- nil
c{1: 0 ✓ (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity)))
c{1: 1 ✓ (((x tagged-value)) ((1 channel-address) (space global)) <- ((read)) ((1 channel-address) (space global)))
cn0: convert-names in main
cn0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity))) nil nil
cn0: checking arg ((space literal))
cn0: checking arg ((30 literal) (capacity))
cn0: checking oarg ((default-space space-address))
maybe-add: ((default-space space-address))
cn0: (((1 channel-address)) <- ((init-channel)) ((3 literal))) nil nil
cn0: checking arg ((3 literal))
cn0: checking oarg ((1 channel-address))
maybe-add: ((1 channel-address))
cn0: (((2 integer) (routine)) <- ((fork-helper)) ((reader fn)) ((default-space space-address) (globals)) ((50 literal) (limit))) nil nil
cn0: checking arg ((reader fn))
cn0: checking arg ((default-space space-address) (globals))
maybe-add: ((default-space space-address) (globals))
cn0: checking arg ((50 literal) (limit))
cn0: checking oarg ((2 integer) (routine))
maybe-add: ((2 integer) (routine))
cn0: convert-names in reader
cn0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity))) nil nil
cn0: checking arg ((space literal))
cn0: checking arg ((30 literal) (capacity))
cn0: checking oarg ((default-space space-address))
maybe-add: ((default-space space-address))
cn0: (((x tagged-value)) ((1 channel-address) (space global)) <- ((read)) ((1 channel-address) (space global))) nil nil
cn0: checking arg ((1 channel-address) (space global))
maybe-add: ((1 channel-address) (space global))
cn0: checking oarg ((x tagged-value))
maybe-add: ((x tagged-value))
cn0: location for oarg ((x tagged-value)): 1
cn0: checking oarg ((1 channel-address) (space global))
maybe-add: ((1 channel-address) (space global))
cn1: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity)))
cn1: (((1 channel-address)) <- ((init-channel)) ((3 literal)))
cn1: (((2 integer) (routine)) <- ((fork-helper)) ((reader fn)) ((default-space space-address) (globals)) ((50 literal) (limit)))
cn1: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity)))
cn1: (((1 tagged-value)) ((1 channel-address) (space global)) <- ((read)) ((1 channel-address) (space global)))
schedule: main
run: main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal) (capacity)))
run: main 0: 1000 => ((default-space space-address))
run: main 1: (((1 channel-address)) <- ((init-channel)) ((3 literal)))
run: init-channel/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: init-channel/main 0: 1031 => ((default-space space-address))
run: init-channel/main 1: (((1 channel-address)) <- ((new)) ((channel literal)))
run: init-channel/main 1: 1062 => ((1 channel-address))
mem: ((1 channel-address)): 1033 <= 1062
run: init-channel/main 2: (((2 integer-address)) <- ((get-address)) ((1 channel-address) (deref)) ((0 offset)))
run: init-channel/main 2: 1062 => ((2 integer-address))
mem: ((2 integer-address)): 1034 <= 1062
run: init-channel/main 3: (((2 integer-address) (deref)) <- ((copy)) ((0 literal)))
run: init-channel/main 3: 0 => ((2 integer-address) (deref))
mem: ((2 integer-address) (deref)): 1062 <= 0
run: init-channel/main 4: (((3 integer-address)) <- ((get-address)) ((1 channel-address) (deref)) ((1 offset)))
run: init-channel/main 4: 1063 => ((3 integer-address))
mem: ((3 integer-address)): 1035 <= 1063
run: init-channel/main 5: (((3 integer-address) (deref)) <- ((copy)) ((0 literal)))
run: init-channel/main 5: 0 => ((3 integer-address) (deref))
mem: ((3 integer-address) (deref)): 1063 <= 0
run: init-channel/main 6: (((4 integer)) <- ((next-input)))
arg: nil 0 (3)
run: init-channel/main 6: 3 => ((4 integer))
mem: ((4 integer)): 1036 <= 3
run: init-channel/main 7: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 3
run: init-channel/main 7: 4 => ((4 integer))
mem: ((4 integer)): 1036 <= 4
run: init-channel/main 8: (((5 tagged-value-array-address-address)) <- ((get-address)) ((1 channel-address) (deref)) ((2 offset)))
run: init-channel/main 8: 1064 => ((5 tagged-value-array-address-address))
mem: ((5 tagged-value-array-address-address)): 1037 <= 1064
run: init-channel/main 9: (((5 tagged-value-array-address-address) (deref)) <- ((new)) ((tagged-value-array literal)) ((4 integer)))
mem: ((4 integer)) => 4
run: init-channel/main 9: 1065 => ((5 tagged-value-array-address-address) (deref))
mem: ((5 tagged-value-array-address-address) (deref)): 1064 <= 1065
run: init-channel/main 10: (((reply)) ((1 channel-address)))
mem: ((1 channel-address)) => 1062
run: main 1: 1062 => ((1 channel-address))
mem: ((1 channel-address)): 1002 <= 1062
run: main 2: (((2 integer) (routine)) <- ((fork-helper)) ((reader fn)) ((default-space space-address) (globals)) ((50 literal) (limit)))
run: main 2: 1 => ((2 integer) (routine))
mem: ((2 integer) (routine)): 1003 <= 1
schedule: done with routine nil
schedule: just helpers left; stopping everything
