Implementation strategies for continuations
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Representing control in the presence of first-class continuations
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Compiling with continuations
Hi-index | 0.00 |
Common implementations of first-class continuations for Scheme involve copying the continuation when it is captured, when it is invoked, or both. Standard ML of New Jersey, on the other hand, creates all continuation frames in the heap to begin with; this eliminates the copying required for capture and invocation, but also gives up the optimization of using the "stack pop" operation to deallocate frames that have not been captured. In this paper, we show how to eliminate both copying steps while retaining efficient stack-wise deallocation for uncaptured flames.