On the static and dynamic extents of delimited continuations
@article{Biernacki2006OnTS, title={On the static and dynamic extents of delimited continuations}, author={Dariusz Biernacki and Olivier Danvy and Chung-chieh Shan}, journal={Sci. Comput. Program.}, year={2006}, volume={60}, pages={274-297} }
Figures from this paper
41 Citations
A Type System for Dynamic Delimited Continuations
- Computer Science
- 2008
This paper introduces a static type system for “control” and “prompt” which does not use recursive types, and designs its type system based on the dynamic CPS transformation recently proposed by Biernacki, Danvy and Millikin.
A static simulation of dynamic delimited control
- EconomicsHigh. Order Symb. Comput.
- 2007
Abstract
We present a continuation-passing-style (CPS) transformation for some dynamic delimited-control operators, including Felleisen’s
$\verb|control|$
and
$\verb|prompt|$
, that extends a…
A A Dynamic Continuation-Passing Style for Dynamic Delimited
- Computer Science
- 2014
The significance of the present work is that the computational artifacts surrounding dynamic CPS are not independent designs: they are mechanical consequences of having put the definitional abstract machine in defunctionalized form.
Typed Dynamic Control Operators for Delimited Continuations
- MathematicsFLOPS
- 2008
A polymorphically typed calculus for dynamic control operators which allows answer-type modification is introduced and it is shown that this calculus enjoys type soundness and is compatible with the CPS translation.
A Dynamic Continuation-Passing Style for Dynamic Delimited Continuations
- Computer ScienceACM Trans. Program. Lang. Syst.
- 2015
The significance of the present work is that the computational artifacts surrounding dynamic CPS are not independent designs: they are mechanical consequences of having put the definitional abstract machine in defunctionalized form.
Functional pearl: the great escape or, how to jump the border without getting caught
- Computer ScienceICFP '07
- 2007
This work presents a variation on Filinski's encoding of delimited continuations that behaves appropriately in the presence of exceptions and gives an implementation in Standard ML of New Jersey that proves the encoding correct with respect to the semantics of delimite dynamic binding.
The Theory and Practice of Programming Languages with Delimited Continuations
- Computer Science
- 2007
It is formalize and prove the folklore theorem that the static delimitedcontrol operators shift and reset can be simulated in terms of the dynamic delimited-control operators control and prompt, and it is shown that breadth-first traversal exploits the difference between shift and control.
Implementing first-class polymorphic delimited continuations by a type-directed selective CPS-transform
- Computer ScienceICFP 2009
- 2009
To tackle the problem of implementing first-class continuations under the adverse conditions brought upon by the Java VM, this work employs a selective CPS transform, which is driven entirely by effect-annotated types and leaves pure code in direct style.
A Functional Abstraction of Typed Invocation Contexts
- Computer ScienceFSCD
- 2021
This paper shows how this method scales to Felleisen’s control and prompt operators, and adopts a functional representation of trails in the CPS semantics to derive a type system that encodes all and only constraints imposed byThe CPS semantics.
Context-based proofs of termination for typed delimited-control operators
- Computer SciencePPDP '09
- 2009
From the normalization proofs, call-by-value and call- by-name evaluators in continuation-passing style with two layers of continuations are extracted; by construction, these evaluator are instances of normalization by evaluation.
References
SHOWING 1-10 OF 138 REFERENCES
On the Static and Dynamic Extents of Delimited Continuations
- Geology
- 2005
We show that breadth-first traversal exploits the difference between the static delimited-control operator shift (alias S) and the dynamic delimited-control operator control (alias F). For the last…
How to remove a dynamic prompt: static and dynamic delimited continuation operators are equally expressible
- Computer Science
- 2005
This work shows how to remove a dynamic prompt and thus to turn so-called static delimited continuation operators into dynamic ones: control, control0, shift0, and gives the simplest Scheme implementation of the dynamic control operators.
A Dynamic Continuation-Passing Style for Dynamic Delimited Continuations
- Computer Science
- 2005
It is shown that the new machine operates more efficiently than the definitional one and that the notion of computation induced by the corresponding evaluator takes the form of a monad.
Partial Continuations as the Difference of Continuations - A Duumvirate of Control Operators
- Computer SciencePLILP
- 1994
A new concept of prefixal extent is introduced that characterises the time during which a partial continuation can be reified and is proposed two equivalent formal semantics for partial continuations: a context-rewriting system and a cps translation.
The Theory and Practice of Programming Languages with Delimited Continuations
- Computer Science
- 2007
It is formalize and prove the folklore theorem that the static delimitedcontrol operators shift and reset can be simulated in terms of the dynamic delimited-control operators control and prompt, and it is shown that breadth-first traversal exploits the difference between shift and control.
Abstract continuations: a mathematical semantics for handling full jumps
- Computer ScienceLISP and Functional Programming
- 1988
This work introduces an abstract domain of rests of computations with appropriate operations for continuation semantics in modern Lisp-style languages, which contain advanced control structures like full functional jumps and control delimiters for which continuation semantics is insufficient.
An Operational Foundation for Delimited Continuations in the CPS Hierarchy
- Computer ScienceLog. Methods Comput. Sci.
- 2005
We present an abstract machine and a reduction semantics for the
lambda-calculus extended with control operators that give access to delimited
continuations in the CPS hierarchy. The abstract machine…
Typing first-class continuations in ML
- Computer SciencePOPL '91
- 1991
First-class continuations are a powerful tool for implementing sophisticated control constructs like co-routines, processes, backtracking, and asynchronous signals, but it is clear that extensive work is required to integrate continuations fully into the definition of Standard ML.
On some Functional Aspects of Control
- Computer Science
- 1988
This approach sheds some light on the applicative aspects of continuations by getting rid of their imperative part: escaping, and develops an example where multiple traversals of a list are abstracted and factorized, reducing the complexity of the resulting program and offering a pleasing dual to sharing transducers.