-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathtest_kernel.txt
184 lines (165 loc) · 10.1 KB
/
test_kernel.txt
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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
Unit Test (Kernel) Trace
@ 000085c0 206f6857 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
\_ e3a00ffa e0010090 e3a00003 e0010190 e59f022c ebfffeca ebffffed eafffee0
@ 0000a280 000085e0 00008620 696b6369 6d20676e 4f482079 5059454e 003f544f
\_ e51ff004 00008e00 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
@ 00008d00 0000a260 00000003 00008c20 6d20676e 4f482079 5059454e 003f544f
\_ e51ff004 00008cc0 004c494e 00000000 00000000 00000000 00000000 00000000
@ 00008c20 0000a260 00000001 00008d00 6d20676e 4f482079 5059454e 003f544f
\_ e1a0c00f e89c8070 00008d00 00008ca0 00008b80 00008bc0 e1a00000 e1a00000
@ 0000a260 00008ca0 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
\_ e1a0c00f e89c8070 000085e0 00008620 00008ca0 00008e40 5059454e 003f544f
@ 000085e0 206f6857 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
\_ ebfffed0 e59f021c ebffffcf eafffedc 00000000 00000000 00000000 00000000
@ 00008600 206f6857 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
\_ e28c0018 eb000483 eb00049d eafffec9 00000000 00000000 73736150 002e6465
Passed.
time 91518us
-------- --------
00009840 a_*_repl
00009860 a_*_read
000098a0 a_*_eval
000098c0 a*_print
000098e0 a_k*_err
00008cc0 a_fail
00008cc8 self_ev*
00008d00 a_inert
00008d04 *no_bind
00008d08 a_true
00008d0c a_false
00008d10 b_number
00008da0 b_bind*g
00008e40 b_scope
00008ec0 a_nil
00008ee0 b_symbol
00008f60 b_pair
00008fc0 k_comb
00009020 b_appl
00009220 b_oper
-------- op_list
-------- k_list
-------- ap_list
-------- m*_eval
-------- m*_eval1
-------- m*_eval2
e59cf01c example5
> ($define! $car ($vau (x . #ignore) #ignore x))
> ($car 1 2 3)
@ a_*_eval 0000e1e0 -------- -------- -------- -------- -------- --------
\_ eb00046b e59b4004 e59f519c e3a06003 e1a07000 ebfffb5b eafffa29 e1a00000
@ 0000e1e0 a*_print S_EVAL grnd_env -------- -------- -------- --------
\_ example5 "$car" 0000e220 -------- -------- -------- -------- b_pair
@ "$car" 0000e300 S_EVAL grnd_env -------- -------- -------- --------
\_ example5 72616324 00000000 00000000 00000000 00000000 00000000 b_symbol
@ grnd_env 0000e300 S_GET "$car" -------- -------- -------- --------
\_ example5 "$car" $car 0000e1c0 -------- -------- -------- b_bind*g
@ 0000e300 $car -------- -------- -------- -------- -------- --------
\_ example5 a*_print S_APPL 0000e220 grnd_env -------- -------- k_comb
@ $car a*_print S_APPL 0000e220 grnd_env -------- -------- k_comb
\_ example5 0000dca0 *no_bind 0000dd00 grnd_env -------- -------- b_oper
formals eformal body senv
#<ERROR>
@ a_*_read a_*_eval a_k*_err -------- -------- -------- -------- --------
\_ eb0007fb e59f01dc eb0007de eb0003b0 e1b01000 059b0008 159b0004 ebfffb5b
0000dca0: example5 "x" *no_bind -------- -------- -------- -------- b_pair (x . #ignore)
0000dd00: example5 "x" a_nil -------- -------- -------- -------- b_pair (x)
0000d080: example5 78000000 00000000 00000000 00000000 00000000 00000000 b_symbol "x"
0000e200: example5 00000001 -------- -------- -------- -------- -------- b_number #1
0000e220: example5 0000e200 0000e260 -------- -------- -------- -------- b_pair (1 2 3)
0000e240: example5 00000002 -------- -------- -------- -------- -------- b_number #2
0000e260: example5 0000e240 0000e2a0 -------- -------- -------- -------- b_pair (2 3)
0000e280: example5 00000003 -------- -------- -------- -------- -------- b_number #3
0000e2a0: example5 0000e280 a_nil -------- -------- -------- -------- b_pair (3)
0000dca0 1c f0 9c e5 80 d0 00 00 04 8d 00 00 bb bb bb bb |................|
0000dcb0 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000dcc0 1c f0 9c e5 a0 dc 00 00 e0 dc 00 00 bb bb bb bb |................|
0000dcd0 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000dce0 1c f0 9c e5 04 8d 00 00 00 dd 00 00 bb bb bb bb |................|
0000dcf0 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000dd00 1c f0 9c e5 80 d0 00 00 c0 8e 00 00 bb bb bb bb |................|
0000dd10 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000dd20 1c f0 9c e5 80 dc 00 00 c0 8e 00 00 bb bb bb bb |................|
0000dd30 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000dd40 a0 98 00 00 20 dc 00 00 aa aa aa aa bb bb bb bb |.... ...........|
0000dd50 cc cc cc cc dd dd dd dd ee ee ee ee ff ff ff ff |................|
0000dd60 20 dc 00 00 c0 98 00 00 03 00 00 00 40 d5 00 00 | ...........@...|
0000dd70 cc cc cc cc dd dd dd dd ee ee ee ee ff ff ff ff |................|
0000dd80 80 93 00 00 c0 98 00 00 04 00 00 00 60 dc 00 00 |............`...|
0000dd90 40 d5 00 00 dd dd dd dd ee ee ee ee c0 8f 00 00 |@...............|
0000e200 1c f0 9c e5 01 00 00 00 aa aa aa aa bb bb bb bb |................|
0000e210 cc cc cc cc dd dd dd dd ee ee ee ee 10 8d 00 00 |................|
0000e220 1c f0 9c e5 00 e2 00 00 60 e2 00 00 bb bb bb bb |........`.......|
0000e230 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000e240 1c f0 9c e5 02 00 00 00 aa aa aa aa bb bb bb bb |................|
0000e250 cc cc cc cc dd dd dd dd ee ee ee ee 10 8d 00 00 |................|
0000e260 1c f0 9c e5 40 e2 00 00 a0 e2 00 00 bb bb bb bb |....@...........|
0000e270 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000e280 1c f0 9c e5 03 00 00 00 aa aa aa aa bb bb bb bb |................|
0000e290 cc cc cc cc dd dd dd dd ee ee ee ee 10 8d 00 00 |................|
0000e2a0 1c f0 9c e5 80 e2 00 00 c0 8e 00 00 bb bb bb bb |................|
0000e2b0 cc cc cc cc dd dd dd dd ee ee ee ee 60 8f 00 00 |............`...|
0000d540 grnd_env
0000e220 dyn_env
heap_start = 0000d000
--------
S_SELF 00000000 "visit"
S_GET 00000001 "lookup"
S_SET 00000002 "bind"
S_EVAL 00000003
S_APPL 00000004 "combine"
S_OPER 00000005 "unwrap"
S_EXEC 00000006
S_PUSH 00000007
S_POP 00000008
S_PUT 00000009
S_PULL 0000000A
block_zero = 206f6857 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
QUEUE: > E[0]
A/E[#] 0x00000000 0x00000004 0x00000008 0x0000000c 0x00000010 0x00000014 0x00000018 0x0000001c
E[0] =a_test - - - - - - -
QUEUE: E[0] > E[2]
A/E[#] 0x00000000 0x00000004 0x00000008 0x0000000c 0x00000010 0x00000014 0x00000018 0x0000001c
* E[0] =a_test - - - - - - -
A[1] example_1 =b_kernel_t - - - - - -
E[2] A[1] =a_test_ok =a_failed - - - - -
QUEUE: E[0] E[2] > E[4]
A/E[#] 0x00000000 0x00000004 0x00000008 0x0000000c 0x00000010 0x00000014 0x00000018 0x0000001c
E[0] =a_test - - - - - - -
A[1] example_1 =b_kernel_t - - - - - -
* E[2] A[1] =a_test_ok =a_failed - - - - -
A[3] template_3 ... =a_test_ok =a_failed =a_nil =b_match_t - -
E[4] =s_NIL A[3] #S_EVAL =a_NIL_env - - - -
QUEUE: E[0] E[2] E[4] > E[5]
A/E[#] 0x00000000 0x00000004 0x00000008 0x0000000c 0x00000010 0x00000014 0x00000018 0x0000001c
E[0] =a_test - - - - - - -
A[1] example_1 =b_kernel_t - - - - - -
E[2] A[1] =a_test_ok =a_failed - - - - -
A[3] template_3 ... =a_test_ok =a_failed =a_nil =b_match_t - -
* E[4] =s_NIL A[3] #S_EVAL =a_NIL_env - - - -
E[5] =a_NIL_env A[3] #S_GET =s_NIL - - - -
QUEUE: E[0] E[2] E[4] E[5] >
A/E[#] 0x00000000 0x00000004 0x00000008 0x0000000c 0x00000010 0x00000014 0x00000018 0x0000001c
E[0] =a_test - - - - - - -
A[1] example_1 =b_kernel_t - - - - - -
E[2] A[1] =a_test_ok =a_failed - - - - -
A[3] template_3 ... =a_test_ok =a_failed =a_nil =b_match_t - -
E[4] =s_NIL A[3] #S_EVAL =a_NIL_env - - - -
* E[5] =a_NIL_env A[3] #S_GET =s_NIL - - - -
E[0] A[3] =a_nil - - - - - -
PROTOTYPE BLOCKS
<block_zero>: W h o i s l i c k i n g m y H O N E Y P O T ? \0
206f6857 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
A[##] example_1 <beh> - - - - - -
e51ff004 =complete 6c207369 696b6369 6d20676e 4f482079 5059454e 003f544f
A[##] template_1 ... <r4> <beh> - - - -
e1a0c00f e89c8010 00000000 =complete 6d20676e 4f482079 5059454e 003f544f
A[##] template_2 ... <r4> <r5> <beh> - - -
e1a0c00f e89c8030 00000000 00000000 =complete 4f482079 5059454e 003f544f
A[##] template_3 ... <r4> <r5> <r6> <beh> - -
e1a0c00f e89c8070 00000000 00000000 00000000 =complete 5059454e 003f544f
A[##] example_3 ... <r4> <r5> <r6> <r7> <r8> <beh>
e1a0c00f e89c81f0 00000000 00000000 00000000 00000000 00000000 =complete
A[##] example_4 <r4> <r5> <r6> <r7> <r8> <r9> <beh>
e99c83f0 00000000 00000000 00000000 00000000 00000000 00000000 =complete
A[##] example_5 - - - - - - <beh>
e92d43f0 11111111 22222222 33333333 44444444 55555555 66666666 =complete