about summary refs log tree commit diff stats
path: root/cpp/.traces/closure
blob: fdec57d7731ad901a5b1b09fdc624f2ce5176f5a (plain) (blame)
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
parse/0: instruction: new
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: init-counter
parse/0:   product: {name: "1", value: 0, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
parse/0: instruction: increment-counter
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: increment-counter
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: new
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: copy
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: copy
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: reply
parse/0:   ingredient: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
parse/0: instruction: new
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: next-ingredient
parse/0:   product: {name: "0", value: 0, type: 2-5-1, properties: ["0": "address":"array":"location", "names": "init-counter"]}
parse/0: instruction: add
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: copy
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: reply
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
run/0: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]} <- new/42 {name: "location", value: 1, type: 0, properties: ["location": "type"]}, {name: "30", value: 30, type: 0, properties: ["30": "literal"]}
mem/0: array size is 30
mem/0: new alloc: 1000
run/0: instruction main/1
run/0: {name: "1", value: 1, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]} <- init-counter/1001 
run/0: instruction init-counter/0
run/0: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]} <- new/42 {name: "location", value: 1, type: 0, properties: ["location": "type"]}, {name: "30", value: 30, type: 0, properties: ["30": "literal"]}
mem/0: array size is 30
mem/0: new alloc: 1031
run/0: instruction init-counter/1
run/0: {name: "x", value: 1, type: 1, properties: ["x": "integer"]} <- copy/1 {name: "23", value: 23, type: 0, properties: ["23": "literal"]}
run/0: ingredient 0 is 23
mem/0: storing 23 in location 1033
run/0: instruction init-counter/2
run/0: {name: "y", value: 2, type: 1, properties: ["y": "integer"]} <- copy/1 {name: "3", value: 3, type: 0, properties: ["3": "literal"]}
run/0: ingredient 0 is 3
mem/0: storing 3 in location 1034
run/0: instruction init-counter/3
run/0: reply/33 {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]}
run/0: result 0 is 1031
mem/0: storing 1031 in location 1002
run/0: instruction main/2
run/0: {name: "2", value: 2, type: 1, properties: ["2": "integer", "raw": ]} <- increment-counter/1002 {name: "1", value: 1, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
mem/0: location 1002 is 1031
run/0: instruction increment-counter/0
run/0: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]} <- new/42 {name: "space", value: 0, type: 0, properties: ["space": "literal"]}, {name: "30", value: 30, type: 0, properties: ["30": "literal"]}
mem/0: array size is 30
mem/0: new alloc: 1062
run/0: instruction increment-counter/1
run/0: {name: "0", value: 0, type: 2-5-1, properties: ["0": "address":"array":"location", "names": "init-counter"]} <- next-ingredient/30 
run/0: product 0 is 1031
mem/0: storing 1031 in location 1063
run/0: instruction increment-counter/2
run/0: {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]} <- add/2 {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]}, {name: "1", value: 1, type: 0, properties: ["1": "literal"]}
run/0: ingredient 0 is y
mem/0: location 1034 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 4
mem/0: storing 4 in location 1034
run/0: instruction increment-counter/3
run/0: {name: "y", value: 1, type: 1, properties: ["y": "integer"]} <- copy/1 {name: "234", value: 234, type: 0, properties: ["234": "literal"]}
run/0: ingredient 0 is 234
mem/0: storing 234 in location 1064
run/0: instruction increment-counter/4
run/0: reply/33 {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]}
mem/0: location 1034 is 4
run/0: result 0 is 4
mem/0: storing 4 in location 2
run/0: instruction main/3
run/0: {name: "3", value: 3, type: 1, properties: ["3": "integer", "raw": ]} <- increment-counter/1002 {name: "1", value: 1, type: 2-5-1, properties: ["1": "address":"array":"location", "names": "init-counter"]}
mem/0: location 1002 is 1031
run/0: instruction increment-counter/0
run/0: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]} <- new/42 {name: "space", value: 0, type: 0, properties: ["space": "literal"]}, {name: "30", value: 30, type: 0, properties: ["30": "literal"]}
mem/0: array size is 30
mem/0: new alloc: 1093
run/0: instruction increment-counter/1
run/0: {name: "0", value: 0, type: 2-5-1, properties: ["0": "address":"array":"location", "names": "init-counter"]} <- next-ingredient/30 
run/0: product 0 is 1031
mem/0: storing 1031 in location 1094
run/0: instruction increment-counter/2
run/0: {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]} <- add/2 {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]}, {name: "1", value: 1, type: 0, properties: ["1": "literal"]}
run/0: ingredient 0 is y
mem/0: location 1034 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 5
mem/0: storing 5 in location 1034
run/0: instruction increment-counter/3
run/0: {name: "y", value: 1, type: 1, properties: ["y": "integer"]} <- copy/1 {name: "234", value: 234, type: 0, properties: ["234": "literal"]}
run/0: ingredient 0 is 234
mem/0: storing 234 in location 1095
run/0: instruction increment-counter/4
run/0: reply/33 {name: "y", value: 2, type: 1, properties: ["y": "integer", "space": "1"]}
mem/0: location 1034 is 5
run/0: result 0 is 5
mem/0: storing 5 in location 3