A Dynamic Continuation-Passing Style for Dynamic Delimited Continuations
(Preliminary Version)
Dariusz Biernacki
February 2005 |
Abstract:
We present a new abstract machine that accounts for dynamic
delimited continuations. We prove the correctness of this new abstract
machine with respect to a definitional abstract machine. Unlike this
definitional abstract machine, the new abstract machine is in
defunctionalized form, which makes it possible to state the corresponding
higher-order evaluator. This evaluator is in continuation+state passing
style, and threads a trail of delimited continuations and a
meta-continuation. Since this style accounts for dynamic delimited
continuations, we refer to it as `dynamic continuation-passing style.'
We illustrate that the new machine is more efficient than the definitional one, and we show that the notion of computation induced by the corresponding evaluator takes the form of a monad Available as PostScript, PDF, DVI. |