1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
parse/0: instruction: 38
parse/0: ingredient: {name: "location", value: 0, type: 0, properties: ["location": "type"]}
parse/0: ingredient: {name: "30", value: 0, type: 0, properties: ["30": "literal"]}
parse/0: product: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
parse/0: instruction: 1001
parse/0: product: {name: "1", value: 0, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
parse/0: instruction: 1002
parse/0: ingredient: {name: "1", value: 0, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
parse/0: product: {name: "2", value: 0, type: 1, properties: ["2": "integer", "raw": ]}
parse/0: instruction: 1002
parse/0: ingredient: {name: "1", value: 0, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
parse/0: product: {name: "3", value: 0, type: 1, properties: ["3": "integer", "raw": ]}
parse/0: instruction: 38
parse/0: ingredient: {name: "location", value: 0, type: 0, properties: ["location": "type"]}
parse/0: ingredient: {name: "30", value: 0, type: 0, properties: ["30": "literal"]}
parse/0: product: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
parse/0: instruction: 1
parse/0: ingredient: {name: "23", value: 0, type: 0, properties: ["23": "literal"]}
parse/0: product: {name: "x", value: 0, type: 1, properties: ["x": "integer"]}
parse/0: instruction: 1
parse/0: ingredient: {name: "3", value: 0, type: 0, properties: ["3": "literal"]}
parse/0: product: {name: "y", value: 0, type: 1, properties: ["y": "integer"]}
parse/0: instruction: 29
parse/0: ingredient: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
parse/0: instruction: 38
parse/0: ingredient: {name: "space", value: 0, type: 0, properties: ["space": "literal"]}
parse/0: ingredient: {name: "30", value: 0, type: 0, properties: ["30": "literal"]}
parse/0: product: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
parse/0: instruction: 26
parse/0: product: {name: "0", value: 0, type: 2-5-1, properties: ["0": "address":"array":"location", "names": "init-counter"]}
parse/0: instruction: 2
parse/0: ingredient: {name: "y", value: 0, type: 1, properties: ["y": "integer", "space": "1"]}
parse/0: ingredient: {name: "1", value: 0, type: 0, properties: ["1": "literal"]}
parse/0: product: {name: "y", value: 0, type: 1, properties: ["y": "integer", "space": "1"]}
parse/0: instruction: 1
parse/0: ingredient: {name: "234", value: 0, type: 0, properties: ["234": "literal"]}
parse/0: product: {name: "y", value: 0, type: 1, properties: ["y": "integer"]}
parse/0: instruction: 29
parse/0: ingredient: {name: "y", value: 0, type: 1, properties: ["y": "integer", "space": "1"]}
name/0: recipe increment-counter is surrounded by init-counter
new/0: location -> 1
new/0: location -> 1
name/0: assign x 1
name/0: assign y 2
new/0: space -> 0
name/0: assign y 1
after-brace/0: recipe main
after-brace/0: new ...
after-brace/0: init-counter ...
after-brace/0: increment-counter ...
after-brace/0: increment-counter ...
after-brace/0: recipe init-counter
after-brace/0: new ...
after-brace/0: copy ...
after-brace/0: copy ...
after-brace/0: reply ...
after-brace/0: recipe increment-counter
after-brace/0: new ...
after-brace/0: next-ingredient ...
after-brace/0: add ...
after-brace/0: copy ...
after-brace/0: reply ...
new/0: routine allocated memory from 1000 to 101000
schedule/0: main
run/0: instruction main/0
mem/0: array size is 30
mem/0: new alloc: 1000
run/0: instruction main/1
run/0: instruction init-counter/0
mem/0: array size is 30
mem/0: new alloc: 1030
run/0: instruction init-counter/1
run/0: ingredient 0 is 23
mem/0: storing 23 in location 1032
run/0: instruction init-counter/2
run/0: ingredient 0 is 3
mem/0: storing 3 in location 1033
run/0: instruction init-counter/3
run/0: result 0 is 1030
mem/0: storing 1030 in location 1002
run/0: instruction main/2
mem/0: location 1002 is 1030
run/0: instruction increment-counter/0
mem/0: array size is 30
mem/0: new alloc: 1060
run/0: instruction increment-counter/1
run/0: product 0 is 1030
mem/0: storing 1030 in location 1061
run/0: instruction increment-counter/2
run/0: ingredient 0 is y
mem/0: location 1033 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 4
mem/0: storing 4 in location 1033
run/0: instruction increment-counter/3
run/0: ingredient 0 is 234
mem/0: storing 234 in location 1062
run/0: instruction increment-counter/4
mem/0: location 1033 is 4
run/0: result 0 is 4
mem/0: storing 4 in location 2
run/0: instruction main/3
mem/0: location 1002 is 1030
run/0: instruction increment-counter/0
mem/0: array size is 30
mem/0: new alloc: 1090
run/0: instruction increment-counter/1
run/0: product 0 is 1030
mem/0: storing 1030 in location 1091
run/0: instruction increment-counter/2
run/0: ingredient 0 is y
mem/0: location 1033 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 5
mem/0: storing 5 in location 1033
run/0: instruction increment-counter/3
run/0: ingredient 0 is 234
mem/0: storing 234 in location 1092
run/0: instruction increment-counter/4
mem/0: location 1033 is 5
run/0: result 0 is 5
mem/0: storing 5 in location 3
|