cs: fix $value
confusion in schemify and begin0
The attempted repair for `$value` in 6c195d521c
was wrong.
This commit is contained in:
parent
253f0f4383
commit
dd9e11e1c7
|
@ -3,8 +3,6 @@
|
||||||
(define-syntax begin0
|
(define-syntax begin0
|
||||||
(syntax-rules (void)
|
(syntax-rules (void)
|
||||||
[(_ expr0) expr0]
|
[(_ expr0) expr0]
|
||||||
[(_ expr0 (void)) ; detect this pattern as a way of accessing the `$value` form
|
|
||||||
($value expr0)]
|
|
||||||
[(_ expr0 expr ...)
|
[(_ expr0 expr ...)
|
||||||
(call-with-values (lambda ()
|
(call-with-values (lambda ()
|
||||||
(call-with-values (lambda () expr0)
|
(call-with-values (lambda () expr0)
|
||||||
|
|
|
@ -613,7 +613,8 @@
|
||||||
(apply values new-stack vals))
|
(apply values new-stack vals))
|
||||||
(loop (fx+ i 1) new-stack)))))]
|
(loop (fx+ i 1) new-stack)))))]
|
||||||
[#($value ,e)
|
[#($value ,e)
|
||||||
(begin0 (interpret e stack) (void))]
|
(let ([v (interpret e stack)])
|
||||||
|
v)]
|
||||||
[#(clear ,clears ,e)
|
[#(clear ,clears ,e)
|
||||||
(let loop ([clears clears] [stack stack])
|
(let loop ([clears clears] [stack stack])
|
||||||
(cond
|
(cond
|
||||||
|
|
Loading…
Reference in New Issue
Block a user