[<<][staapl][>>][..]
Fri Apr 25 22:27:35 EDT 2008
weird bug
ok. almost working, except that i get 'stack' instead of '2stack' in
the mexit-update function, while 2stack-mexit gets a '2stack'. i hope
this is not a conceptual error with order of prompt tags..
looks like it is.. i should check if it's possible to mix the
open/close constructs.
basicly, what i'm doing is this: create a shift with a reset in it.
(shift (E (reset ...)))
the normal operation is nested shifts:
(reset (E1 (shift (E2 (shift ...)))))
it really should not be a problem: shift can only see the inner reset,
the only way a reset can disappear in a reduction is when it exits
(returns a value).
(reset val) => val
(reset E[(shift k expr)])
=> (reset ((lambda (k) expr)
(lambda (v) (reset E[v]))))
;; where E has no reset
--
(reset val) => val
(reset E[(shift k expr)])
=> (reset
(define (k v) (reset E[v]))
expr)
i can't juggle with it yet.. maybe make some test cases?
EDIT: i really don't see it.. put in some logging tags, and i don't
understand that order either.. looks like the 'nested closing' doesn't
work.
[Reply][About]
[<<][staapl][>>][..]