c{0: 0 (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) -- nil
c{0: 1 (((s string-address)) <- ((new)) foo) -- nil
c{0: 2 (((x keyboard-address)) <- ((init-keyboard)) ((s string-address))) -- nil
c{0: 3 (((1 character-address) (raw)) <- ((read-key)) ((x keyboard-address))) -- nil
c{1: 0 ✓ (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
c{1: 1 ✓ (((s string-address)) <- ((new)) foo)
c{1: 2 ✓ (((x keyboard-address)) <- ((init-keyboard)) ((s string-address)))
c{1: 3 ✓ (((1 character-address) (raw)) <- ((read-key)) ((x keyboard-address)))
cn0: convert-names in main
cn0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal))) nil nil
cn0: checking arg ((space literal))
cn0: checking arg ((30 literal))
cn0: checking oarg ((default-space space-address))
maybe-add: ((default-space space-address))
cn0: (((s string-address)) <- ((new)) foo) nil nil
cn0: checking arg foo
cn0: checking oarg ((s string-address))
maybe-add: ((s string-address))
cn0: location for oarg ((s string-address)): 1
cn0: (((x keyboard-address)) <- ((init-keyboard)) ((s string-address))) ((s 1)) nil
cn0: checking arg ((s string-address))
maybe-add: ((s string-address))
cn0: checking oarg ((x keyboard-address))
maybe-add: ((x keyboard-address))
cn0: location for oarg ((x keyboard-address)): 2
cn0: (((1 character-address) (raw)) <- ((read-key)) ((x keyboard-address))) ((s 1) (x 2)) nil
cn0: checking arg ((x keyboard-address))
maybe-add: ((x keyboard-address))
cn0: checking oarg ((1 character-address) (raw))
maybe-add: ((1 character-address) (raw))
cn1: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
cn1: (((1 string-address)) <- ((new)) foo)
cn1: (((2 keyboard-address)) <- ((init-keyboard)) ((1 string-address)))
cn1: (((1 character-address) (raw)) <- ((read-key)) ((2 keyboard-address)))
schedule: main
run: main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: main 0: 1000 => ((default-space space-address))
run: main 1: (((1 string-address)) <- ((new)) foo)
run: main 1: 1031 => ((1 string-address))
mem: ((1 string-address)): 1002 <= 1031
run: main 2: (((2 keyboard-address)) <- ((init-keyboard)) ((1 string-address)))
mem: ((1 string-address)) => 1031
run: init-keyboard/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: init-keyboard/main 0: 1035 => ((default-space space-address))
run: init-keyboard/main 1: (((1 keyboard-address)) <- ((new)) ((keyboard literal)))
run: init-keyboard/main 1: 1066 => ((1 keyboard-address))
mem: ((1 keyboard-address)): 1037 <= 1066
run: init-keyboard/main 2: (((2 string-address-address)) <- ((get-address)) ((1 keyboard-address) (deref)) ((1 offset)))
run: init-keyboard/main 2: 1067 => ((2 string-address-address))
mem: ((2 string-address-address)): 1038 <= 1067
run: init-keyboard/main 3: (((2 string-address-address) (deref)) <- ((next-input)))
arg: nil 0 (1031)
run: init-keyboard/main 3: 1031 => ((2 string-address-address) (deref))
mem: ((2 string-address-address) (deref)): 1067 <= 1031
run: init-keyboard/main 4: (((3 integer-address)) <- ((get-address)) ((1 keyboard-address) (deref)) ((0 offset)))
run: init-keyboard/main 4: 1066 => ((3 integer-address))
mem: ((3 integer-address)): 1039 <= 1066
run: init-keyboard/main 5: (((3 integer-address) (deref)) <- ((copy)) ((0 literal)))
run: init-keyboard/main 5: 0 => ((3 integer-address) (deref))
mem: ((3 integer-address) (deref)): 1066 <= 0
run: init-keyboard/main 6: (((reply)) ((1 keyboard-address)))
mem: ((1 keyboard-address)) => 1066
run: main 2: 1066 => ((2 keyboard-address))
mem: ((2 keyboard-address)): 1003 <= 1066
run: main 3: (((1 character-address) (raw)) <- ((read-key)) ((2 keyboard-address)))
mem: ((2 keyboard-address)) => 1066
run: read-key/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: read-key/main 0: 1068 => ((default-space space-address))
run: read-key/main 1: (((1 keyboard-address)) <- ((next-input)))
arg: nil 0 (1066)
run: read-key/main 1: 1066 => ((1 keyboard-address))
mem: ((1 keyboard-address)): 1070 <= 1066
run: read-key/main 2: (((2 terminal-address)) <- ((next-input)))
arg: nil 1 (1066)
run: read-key/main 2: nil => ((2 terminal-address))
mem: ((2 terminal-address)): 1071 <= nil
run: read-key/main 3: (((jump-unless)) ((1 keyboard-address)) ((9 offset)))
mem: ((1 keyboard-address)) => 1066
run: read-key/main 4: (((3 integer-address)) <- ((get-address)) ((1 keyboard-address) (deref)) ((0 offset)))
run: read-key/main 4: 1066 => ((3 integer-address))
mem: ((3 integer-address)): 1072 <= 1066
run: read-key/main 5: (((4 string-address)) <- ((get)) ((1 keyboard-address) (deref)) ((1 offset)))
mem: ((1067 string-address) (raw)) => 1031
run: read-key/main 5: 1031 => ((4 string-address))
mem: ((4 string-address)): 1073 <= 1031
run: read-key/main 6: (((5 integer)) <- ((length)) ((4 string-address) (deref)))
array-len: ((4 string-address) (deref))
mem: ((1031 integer) (raw)) => 3
run: read-key/main 6: 3 => ((5 integer))
mem: ((5 integer)): 1074 <= 3
run: read-key/main 7: (((6 boolean)) <- ((greater-or-equal)) ((3 integer-address) (deref)) ((5 integer)))
mem: ((3 integer-address) (deref)) => 0
mem: ((5 integer)) => 3
run: read-key/main 7: nil => ((6 boolean))
mem: ((6 boolean)): 1075 <= nil
run: read-key/main 8: (((jump-unless)) ((6 boolean)) ((1 offset)))
mem: ((6 boolean)) => nil
run: read-key/main 10: (((7 character)) <- ((index)) ((4 string-address) (deref)) ((3 integer-address) (deref)))
mem: ((3 integer-address) (deref)) => 0
array-len: ((1031 string) (raw))
mem: ((1031 integer) (raw)) => 3
mem: ((1032 byte) (raw)) => f
run: read-key/main 10: #\f => ((7 character))
mem: ((7 character)): 1076 <= #\f
run: read-key/main 11: (((3 integer-address) (deref)) <- ((add)) ((3 integer-address) (deref)) ((1 literal)))
mem: ((3 integer-address) (deref)) => 0
run: read-key/main 11: 1 => ((3 integer-address) (deref))
mem: ((3 integer-address) (deref)): 1066 <= 1
run: read-key/main 12: (((reply)) ((7 character)))
mem: ((7 character)) => f
run: main 3: #\f => ((1 character-address) (raw))
mem: ((1 character-address) (raw)): 1 <= #\f
schedule: done with routine nil
