aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2024-12-31 14:35:13 -0500
committerGravatar Peter McGoron 2024-12-31 14:35:51 -0500
commitdcc4be205241c4db1170aefe79595cc81025e284 (patch)
treebe54e9d63dceba60277543736c5354b6268d67e6
parentadd more tests related to quotes (diff)
simplify push-prompt and push-sub-continuation CPS commands
-rw-r--r--cps.scm10
1 files changed, 5 insertions, 5 deletions
diff --git a/cps.scm b/cps.scm
index 7db7dc0..63b92ba 100644
--- a/cps.scm
+++ b/cps.scm
@@ -144,7 +144,7 @@
(cps-kappa 'discarded
'(γ↑ γ↓)
(cps-apply 'proc
- `(cons kont γ↑)
+ `(cons* kont γ↑)
'__κ0
'γ↓)))))
@@ -169,8 +169,7 @@
(new-metakont (gensym "γ"))
(cps-expr (core->cps
expr-part
- `(cons ,new-prompt
- (cons ,kont ,new-metakont))
+ `(cons* ,new-prompt ,kont ,new-metakont)
'__κ0)))
(core->cps prompt-part metakont
(cps-kappa new-metakont
@@ -185,8 +184,9 @@
(sub-cont-from-eval (gensym "γ"))
(cps-expr (core->cps
expr-part
- `(append ,sub-cont-reified
- (cons ,kont ,sub-cont-from-eval))
+ `(in-middle ,sub-cont-reified
+ ,kont
+ ,sub-cont-from-eval)
'__κ0)))
(core->cps sub-cont-part
metakont