diff --git a/collects/redex/examples/delim-cont/grammar.rkt b/collects/redex/examples/delim-cont/grammar.rkt index bfe5918dc5..671a66e516 100644 --- a/collects/redex/examples/delim-cont/grammar.rkt +++ b/collects/redex/examples/delim-cont/grammar.rkt @@ -43,7 +43,7 @@ (E W (in-hole W (dw x e E e))) ;; Evaluation context without `dw': (W M (wcm w M)) - (M hole (v ... W e ...) (begin W e) (% v W v)) + (M hole (v ... W e ...) (begin W e) (% W e e) (% v e W) (% v W v)) ;; Context ending on a dw boundary: (D hole (in-hole E (dw x e hole e)))) diff --git a/collects/redex/examples/delim-cont/test.rkt b/collects/redex/examples/delim-cont/test.rkt index 7d2bad03f1..14e932336b 100644 --- a/collects/redex/examples/delim-cont/test.rkt +++ b/collects/redex/examples/delim-cont/test.rkt @@ -141,6 +141,16 @@ 0) (λ (x) (+ x 1)))) '(<> () (1 3) 8)) + (test "abort tag eval" + '(<> + () [] + (% (print 1) 2 3)) + '(<> () [1] 2)) + (test "abort handler eval" + '(<> + () [] + (% 1 2 (print 3))) + '(<> () [3] 2)) (test "call/cc 2 levels dw" '(<> ()