@@ -67,6 +67,7 @@ void _ld() {
67
67
_work = car (_work );
68
68
_stack = cons (_work , _stack );
69
69
_control = cdr (cdr (_control ));
70
+ _work = _nil ;
70
71
}
71
72
72
73
void _car () {
@@ -138,8 +139,11 @@ void _eq() {
138
139
}
139
140
140
141
void _ldf () {
141
- _stack = cons (cons (car (cdr (_control )), _environ ), _stack );
142
+ _work = cons (car (cdr (_control )), _environ );
143
+ _stack = cons (_work , _stack );
144
+ _environ = cdr (_environ );
142
145
_control = cdr (cdr (_control ));
146
+ _work = _nil ;
143
147
}
144
148
145
149
void _rtn () {
@@ -155,7 +159,9 @@ void _dum() {
155
159
}
156
160
157
161
void _rap () {
158
- _dump = cons (cdr (cdr (_stack )), cons (cdr (_environ ), cons (cdr (_control ),_dump )));
162
+ _dump = cons (cdr (_control ),_dump );
163
+ _dump = cons (cdr (_environ ), _dump );
164
+ _dump = cons (cdr (cdr (_stack )), _dump );
159
165
_environ = cdr (car (_stack ));
160
166
_environ -> Cons .car = car (cdr (_stack ));
161
167
_control = car (car (_stack ));
@@ -178,7 +184,9 @@ void _join() {
178
184
}
179
185
180
186
void _ap () {
181
- _dump = cons (cdr (cdr (_stack )),cons (_environ ,cons (cdr (_control ), _dump )));
187
+ _dump = cons (cdr (_control ), _dump );
188
+ _dump = cons (_environ , _dump );
189
+ _dump = cons (cdr (cdr (_stack )), _dump );
182
190
_environ = cons (car (cdr (_stack )),cdr (car (_stack )));
183
191
_control = car (car (_stack ));
184
192
_stack = _nil ;
0 commit comments