parse/0: instruction: 105 parse/0: ingredient: {name: "-1", value: 0, type: 0, properties: ["-1": "literal"]} parse/0: product: {name: "1", value: 0, type: 2-5-4, properties: ["1": "address":"array":"character", "raw": ]} parse/0: instruction: 1 parse/0: ingredient: {name: "1", value: 0, type: 2-5-4, properties: ["1": "address":"array":"character", "deref": , "raw": ]} parse/0: product: {name: "2", value: 0, type: 5-4, properties: ["2": "array":"character", "raw": ]} after-brace/0: recipe test-integer-to-decimal-digit-negative after-brace/0: integer-to-decimal-string ... after-brace/0: copy ... run/0: instruction test-integer-to-decimal-digit-negative/0 run/0: instruction integer-to-decimal-string/0 mem/0: new alloc: 1000 mem/0: array size is 30 run/0: instruction integer-to-decimal-string/1 run/0: product 0 is -1 mem/0: storing -1 in location 1002 run/0: instruction integer-to-decimal-string/3 mem/0: location 1002 is -1 run/0: ingredient 0 is -1 run/0: ingredient 1 is run/0: jumping to instruction 6 run/0: instruction integer-to-decimal-string/7 run/0: ingredient 0 is 0 mem/0: storing 0 in location 1004 run/0: instruction integer-to-decimal-string/9 run/0: ingredient 0 is n mem/0: location 1002 is -1 run/0: ingredient 1 is 0 run/0: product 0 is 1 mem/0: storing 1 in location 1005 run/0: instruction integer-to-decimal-string/10 mem/0: location 1005 is 1 run/0: ingredient 0 is 1 run/0: jump-unless fell through run/0: instruction integer-to-decimal-string/11 run/0: ingredient 0 is 1 mem/0: storing 1 in location 1004 run/0: instruction integer-to-decimal-string/12 run/0: ingredient 0 is n mem/0: location 1002 is -1 run/0: ingredient 1 is -1 run/0: ingredient 1 is -1 run/0: product 0 is 1 mem/0: storing 1 in location 1002 run/0: instruction integer-to-decimal-string/14 run/0: instruction init-buffer/0 mem/0: new alloc: 1030 mem/0: array size is 30 run/0: instruction init-buffer/1 mem/0: new alloc: 1060 mem/0: storing 1060 in location 1032 run/0: instruction init-buffer/2 run/0: ingredient 0 is result mem/0: location 1032 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: product 0 is 1060 mem/0: storing 1060 in location 1033 run/0: instruction init-buffer/3 run/0: ingredient 0 is 0 mem/0: location 1033 is 1060 mem/0: storing 0 in location 1060 run/0: instruction init-buffer/4 run/0: ingredient 0 is result mem/0: location 1032 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: product 0 is 1061 mem/0: storing 1061 in location 1034 run/0: instruction init-buffer/5 run/0: product 0 is 30 mem/0: storing 30 in location 1035 run/0: instruction init-buffer/6 mem/0: new alloc: 1062 mem/0: location 1034 is 1061 mem/0: storing 1062 in location 1061 mem/0: location 1035 is 30 mem/0: array size is 30 run/0: instruction init-buffer/7 mem/0: location 1032 is 1060 run/0: result 0 is 1060 mem/0: storing 1060 in location 1006 run/0: instruction integer-to-decimal-string/15 run/0: ingredient 0 is 48 mem/0: storing 48 in location 1007 run/0: instruction integer-to-decimal-string/17 run/0: ingredient 0 is n mem/0: location 1002 is 1 run/0: ingredient 1 is 0 run/0: product 0 is 0 mem/0: storing 0 in location 1008 run/0: instruction integer-to-decimal-string/18 mem/0: location 1008 is 0 run/0: ingredient 0 is 0 run/0: jump-if fell through run/0: instruction integer-to-decimal-string/19 run/0: ingredient 0 is n mem/0: location 1002 is 1 run/0: ingredient 1 is 10 run/0: product 0 is 0 mem/0: storing 0 in location 1002 run/0: product 1 is 1 mem/0: storing 1 in location 1009 run/0: instruction integer-to-decimal-string/20 run/0: ingredient 0 is digit-base mem/0: location 1007 is 48 run/0: ingredient 1 is digit mem/0: location 1009 is 1 run/0: product 0 is 49 mem/0: storing 49 in location 1010 run/0: instruction integer-to-decimal-string/21 mem/0: location 1006 is 1060 mem/0: location 1010 is 49 run/0: instruction buffer-append/0 mem/0: new alloc: 1092 mem/0: array size is 30 run/0: instruction buffer-append/1 run/0: product 0 is 1060 mem/0: storing 1060 in location 1094 run/0: instruction buffer-append/2 run/0: product 0 is 49 mem/0: storing 49 in location 1095 run/0: instruction buffer-append/4 mem/0: location 1094 is 1060 run/0: instruction buffer-full?/0 mem/0: new alloc: 1122 mem/0: array size is 30 run/0: instruction buffer-full?/1 run/0: product 0 is 1060 mem/0: storing 1060 in location 1124 run/0: instruction buffer-full?/2 run/0: ingredient 0 is in mem/0: location 1124 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: its type is 1 mem/0: location 1060 is 0 run/0: product 0 is 0 mem/0: storing 0 in location 1125 run/0: instruction buffer-full?/3 run/0: ingredient 0 is in mem/0: location 1124 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: its type is 2 mem/0: location 1061 is 1062 run/0: product 0 is 1062 mem/0: storing 1062 in location 1126 run/0: instruction buffer-full?/4 mem/0: location 1126 is 1062 mem/0: storing 30 in location 1127 run/0: instruction buffer-full?/5 run/0: ingredient 0 is len mem/0: location 1125 is 0 run/0: ingredient 1 is capacity mem/0: location 1127 is 30 run/0: product 0 is 0 mem/0: storing 0 in location 1128 run/0: instruction buffer-full?/6 mem/0: location 1128 is 0 run/0: result 0 is 0 mem/0: storing 0 in location 1096 run/0: instruction buffer-append/5 mem/0: location 1096 is 0 run/0: ingredient 0 is 0 run/0: ingredient 1 is run/0: jumping to instruction 7 run/0: instruction buffer-append/8 run/0: ingredient 0 is in mem/0: location 1094 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: product 0 is 1060 mem/0: storing 1060 in location 1097 run/0: instruction buffer-append/9 run/0: ingredient 0 is in mem/0: location 1094 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: its type is 2 mem/0: location 1061 is 1062 run/0: product 0 is 1062 mem/0: storing 1062 in location 1098 run/0: instruction buffer-append/10 run/0: ingredient 0 is s mem/0: location 1098 is 1062 run/0: ingredient 1 is {name: "len", value: 4, type: 2-1, properties: ["len": "address":"integer", "deref": ]} mem/0: location 1097 is 1060 mem/0: location 1060 is 0 run/0: address to copy is 1063 run/0: product 0 is 1063 mem/0: storing 1063 in location 1099 run/0: instruction buffer-append/11 run/0: ingredient 0 is c mem/0: location 1095 is 49 mem/0: location 1099 is 1063 mem/0: storing 49 in location 1063 run/0: instruction buffer-append/12 run/0: ingredient 0 is len mem/0: location 1097 is 1060 mem/0: location 1060 is 0 run/0: ingredient 1 is 1 run/0: product 0 is 1 mem/0: location 1097 is 1060 mem/0: storing 1 in location 1060 run/0: instruction buffer-append/13 mem/0: location 1094 is 1060 run/0: result 0 is 1060 mem/0: storing 1060 in location 1006 run/0: instruction integer-to-decimal-string/22 run/0: ingredient 0 is -6 run/0: pc now 16 run/0: instruction integer-to-decimal-string/17 run/0: ingredient 0 is n mem/0: location 1002 is 0 run/0: ingredient 1 is 0 run/0: product 0 is 1 mem/0: storing 1 in location 1008 run/0: instruction integer-to-decimal-string/18 mem/0: location 1008 is 1 run/0: ingredient 0 is 1 run/0: ingredient 1 is run/0: jumping to instruction 23 run/0: instruction integer-to-decimal-string/25 mem/0: location 1004 is 1 run/0: ingredient 0 is 1 run/0: jump-unless fell through run/0: instruction integer-to-decimal-string/26 mem/0: location 1006 is 1060 run/0: instruction buffer-append/0 mem/0: new alloc: 1152 mem/0: array size is 30 run/0: instruction buffer-append/1 run/0: product 0 is 1060 mem/0: storing 1060 in location 1154 run/0: instruction buffer-append/2 run/0: product 0 is 45 mem/0: storing 45 in location 1155 run/0: instruction buffer-append/4 mem/0: location 1154 is 1060 run/0: instruction buffer-full?/0 mem/0: new alloc: 1182 mem/0: array size is 30 run/0: instruction buffer-full?/1 run/0: product 0 is 1060 mem/0: storing 1060 in location 1184 run/0: instruction buffer-full?/2 run/0: ingredient 0 is in mem/0: location 1184 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: its type is 1 mem/0: location 1060 is 1 run/0: product 0 is 1 mem/0: storing 1 in location 1185 run/0: instruction buffer-full?/3 run/0: ingredient 0 is in mem/0: location 1184 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: its type is 2 mem/0: location 1061 is 1062 run/0: product 0 is 1062 mem/0: storing 1062 in location 1186 run/0: instruction buffer-full?/4 mem/0: location 1186 is 1062 mem/0: storing 30 in location 1187 run/0: instruction buffer-full?/5 run/0: ingredient 0 is len mem/0: location 1185 is 1 run/0: ingredient 1 is capacity mem/0: location 1187 is 30 run/0: product 0 is 0 mem/0: storing 0 in location 1188 run/0: instruction buffer-full?/6 mem/0: location 1188 is 0 run/0: result 0 is 0 mem/0: storing 0 in location 1156 run/0: instruction buffer-append/5 mem/0: location 1156 is 0 run/0: ingredient 0 is 0 run/0: ingredient 1 is run/0: jumping to instruction 7 run/0: instruction buffer-append/8 run/0: ingredient 0 is in mem/0: location 1154 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: product 0 is 1060 mem/0: storing 1060 in location 1157 run/0: instruction buffer-append/9 run/0: ingredient 0 is in mem/0: location 1154 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: its type is 2 mem/0: location 1061 is 1062 run/0: product 0 is 1062 mem/0: storing 1062 in location 1158 run/0: instruction buffer-append/10 run/0: ingredient 0 is s mem/0: location 1158 is 1062 run/0: ingredient 1 is {name: "len", value: 4, type: 2-1, properties: ["len": "address":"integer", "deref": ]} mem/0: location 1157 is 1060 mem/0: location 1060 is 1 run/0: address to copy is 1064 run/0: product 0 is 1064 mem/0: storing 1064 in location 1159 run/0: instruction buffer-append/11 run/0: ingredient 0 is c mem/0: location 1155 is 45 mem/0: location 1159 is 1064 mem/0: storing 45 in location 1064 run/0: instruction buffer-append/12 run/0: ingredient 0 is len mem/0: location 1157 is 1060 mem/0: location 1060 is 1 run/0: ingredient 1 is 1 run/0: product 0 is 2 mem/0: location 1157 is 1060 mem/0: storing 2 in location 1060 run/0: instruction buffer-append/13 mem/0: location 1154 is 1060 run/0: result 0 is 1060 mem/0: storing 1060 in location 1006 run/0: instruction integer-to-decimal-string/28 run/0: ingredient 0 is tmp mem/0: location 1006 is 1060 run/0: ingredient 1 is length run/0: address to copy is 1060 run/0: its type is 1 mem/0: location 1060 is 2 run/0: product 0 is 2 mem/0: storing 2 in location 1011 run/0: instruction integer-to-decimal-string/29 run/0: ingredient 0 is tmp mem/0: location 1006 is 1060 run/0: ingredient 1 is data run/0: address to copy is 1061 run/0: its type is 2 mem/0: location 1061 is 1062 run/0: product 0 is 1062 mem/0: storing 1062 in location 1012 run/0: instruction integer-to-decimal-string/30 mem/0: new alloc: 1212 mem/0: storing 1212 in location 1003 mem/0: location 1011 is 2 mem/0: array size is 2 run/0: instruction integer-to-decimal-string/31 run/0: ingredient 0 is len mem/0: location 1011 is 2 run/0: ingredient 1 is 1 run/0: product 0 is 1 mem/0: storing 1 in location 1013 run/0: instruction integer-to-decimal-string/32 run/0: ingredient 0 is 0 mem/0: storing 0 in location 1014 run/0: instruction integer-to-decimal-string/34 run/0: ingredient 0 is i mem/0: location 1013 is 1 run/0: ingredient 1 is 0 run/0: product 0 is 0 mem/0: storing 0 in location 1008 run/0: instruction integer-to-decimal-string/35 mem/0: location 1008 is 0 run/0: ingredient 0 is 0 run/0: jump-if fell through run/0: instruction integer-to-decimal-string/36 run/0: ingredient 0 is {name: "buf", value: 11, type: 2-5-4, properties: ["buf": "address":"array":"character", "deref": ]} mem/0: location 1012 is 1062 run/0: ingredient 1 is {name: "i", value: 12, type: 1, properties: ["i": "integer"]} mem/0: location 1013 is 1 run/0: address to copy is 1064 run/0: its type is 4 mem/0: location 1064 is 45 run/0: product 0 is 45 mem/0: storing 45 in location 1015 run/0: instruction integer-to-decimal-string/37 run/0: ingredient 0 is result mem/0: location 1003 is 1212 run/0: ingredient 1 is {name: "j", value: 13, type: 1, properties: ["j": "integer"]} mem/0: location 1014 is 0 run/0: address to copy is 1213 run/0: product 0 is 1213 mem/0: storing 1213 in location 1016 run/0: instruction integer-to-decimal-string/38 run/0: ingredient 0 is src mem/0: location 1015 is 45 mem/0: location 1016 is 1213 mem/0: storing 45 in location 1213 run/0: instruction integer-to-decimal-string/39 run/0: ingredient 0 is i mem/0: location 1013 is 1 run/0: ingredient 1 is 1 run/0: product 0 is 0 mem/0: storing 0 in location 1013 run/0: instruction integer-to-decimal-string/40 run/0: ingredient 0 is j mem/0: location 1014 is 0 run/0: ingredient 1 is 1 run/0: product 0 is 1 mem/0: storing 1 in location 1014 run/0: instruction integer-to-decimal-string/41 run/0: ingredient 0 is -8 run/0: pc now 33 run/0: instruction integer-to-decimal-string/34 run/0: ingredient 0 is i mem/0: location 1013 is 0 run/0: ingredient 1 is 0 run/0: product 0 is 0 mem/0: storing 0 in location 1008 run/0: instruction integer-to-decimal-string/35 mem/0: location 1008 is 0 run/0: ingredient 0 is 0 run/0: jump-if fell through run/0: instruction integer-to-decimal-string/36 run/0: ingredient 0 is {name: "buf", value: 11, type: 2-5-4, properties: ["buf": "address":"array":"character", "deref": ]} mem/0: location 1012 is 1062 run/0: ingredient 1 is {name: "i", value: 12, type: 1, properties: ["i": "integer"]} mem/0: location 1013 is 0 run/0: address to copy is 1063 run/0: its type is 4 mem/0: location 1063 is 49 run/0: product 0 is 49 mem/0: storing 49 in location 1015 run/0: instruction integer-to-decimal-string/37 run/0: ingredient 0 is result mem/0: location 1003 is 1212 run/0: ingredient 1 is {name: "j", value: 13, type: 1, properties: ["j": "integer"]} mem/0: location 1014 is 1 run/0: address to copy is 1214 run/0: product 0 is 1214 mem/0: storing 1214 in location 1016 run/0: instruction integer-to-decimal-string/38 run/0: ingredient 0 is src mem/0: location 1015 is 49 mem/0: location 1016 is 1214 mem/0: storing 49 in location 1214 run/0: instruction integer-to-decimal-string/39 run/0: ingredient 0 is i mem/0: location 1013 is 0 run/0: ingredient 1 is 1 run/0: product 0 is -1 mem/0: storing -1 in location 1013 run/0: instruction integer-to-decimal-string/40 run/0: ingredient 0 is j mem/0: location 1014 is 1 run/0: ingredient 1 is 1 run/0: product 0 is 2 mem/0: storing 2 in location 1014 run/0: instruction integer-to-decimal-string/41 run/0: ingredient 0 is -8 run/0: pc now 33 run/0: instruction integer-to-decimal-string/34 run/0: ingredient 0 is i mem/0: location 1013 is -1 run/0: ingredient 1 is 0 run/0: product 0 is 1 mem/0: storing 1 in location 1008 run/0: instruction integer-to-decimal-string/35 mem/0: location 1008 is 1 run/0: ingredient 0 is 1 run/0: ingredient 1 is run/0: jumping to instruction 42 run/0: instruction integer-to-decimal-string/43 mem/0: location 1003 is 1212 run/0: result 0 is 1212 mem/0: storing 1212 in location 1 run/0: instruction test-integer-to-decimal-digit-negative/1 run/0: ingredient 0 is 1 mem/0: location 1 is 1212 mem/0: location 1212 is 2 mem/0: location 1213 is 45 mem/0: location 1214 is 49 mem/0: storing 2 in location 2 mem/0: storing 45 in location 3 mem/0: storing 49 in location 4