Abstract
Continuations, when available as first-class objects, provide a general control abstraction in programming languages. They liberate the programmer from specific control structures, increasing programming language extensibility. Such continuations may be extended by embedding them in procedural objects. This technique is first used to restore a fluid environment when a continuation object is invoked. We then consider techniques for constraining the power of continuations in the interest of security and efficiency. Domain mechanisms, which create dynamic barriers for enclosing control, are implemented using fluids. Domains are then used to implement an unwind-protect facility in the presence of first-class continuations. Finally, we present two mechanisms, wind-unwind and dynamic-wind, that generalize unwind-protect. © 1987, ACM. All rights reserved.
Author supplied keywords
Cite
CITATION STYLE
Haynes, C. T., & Friedman, D. P. (1987). Embedding Continuations in Procedural Objects. ACM Transactions on Programming Languages and Systems (TOPLAS), 9(4), 582–598. https://doi.org/10.1145/29873.30392
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.