Fixes definition of evaluation contexts

This commit is contained in:
Casey Klein 2010-11-12 11:46:16 -06:00
parent 04a4ad269f
commit e7e504741e
2 changed files with 11 additions and 1 deletions

View File

@ -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))))

View File

@ -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"
'(<>
()