MULTILISP: a language for concurrent symbolic computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Revised report on the algorithmic language scheme
ACM SIGPLAN Notices
Obtaining coroutines with continuations
Computer Languages
Three implementation models for scheme
Three implementation models for scheme
The SCHEME programming language
The SCHEME programming language
Abstract continuations: a mathematical semantics for handling full jumps
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Implementation strategies for continuations
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Computer Languages
Stores and partial continuations as first-class objects in a language and its environment
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The theory and practice of first-class prompts
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Control delimiters and their hierarchies
Lisp and Symbolic Computation
The implementation of PC Scheme
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Revised report on the algorithm language ALGOL 60
Communications of the ACM
Reasoning with continuations II: full abstraction for models of control
LFP '90 Proceedings of the 1990 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
A dynamic extent control operator for partial continuations
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Models of continuations without continuations
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Back to direct style II: first-class continuations
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
A foundation for an efficient multi-threaded scheme system
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
A customizable substrate for concurrent languages
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Sound rules for parallel evaluation of a functional language callcc
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
A library of high level control operators
ACM SIGPLAN Lisp Pointers
A generalization of exceptions and control in ML-like languages
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Lisp and Symbolic Computation
Revised report on the algorithmic language scheme
ACM SIGPLAN Lisp Pointers
A Syntactic Theory of Dynamic Binding
Higher-Order and Symbolic Computation
An Operational Investigation of the CPS Hierarchy
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
A type-theoretic foundation of continuations and prompts
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
CAPSULE: Hardware-Assisted Parallel Execution of Component-Based Programs
Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture
Design and semantics of quantum: a language to control resource consumption in distributed computing
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
Adding delimited and composable control to a production programming environment
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
A static simulation of dynamic delimited control
Higher-Order and Symbolic Computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
A type-theoretic foundation of delimited continuations
Higher-Order and Symbolic Computation
A substructural type system for delimited continuations
TLCA'07 Proceedings of the 8th international conference on Typed lambda calculi and applications
Delimited continuations in operating systems
CONTEXT'07 Proceedings of the 6th international and interdisciplinary conference on Modeling and using context
Programming with time: cyber-physical programming with impromptu
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Hi-index | 0.00 |
Continuations have proven to be useful for implementing a variety of control structures, including exception handling facilities and breadth-first searching algorithms. However, traditional continuations are not useful in the presence of concurrency, because the notion of the rest of the computation represented by a continuation does not in general make sense. This paper presents a new type of continuation, called a process continuation, that may be used to control tree-structured concurrency. Just as a traditional continuation represents the rest of a computation from a given point in the computation, a process continuation represents the rest of a subcomputation, or process, from a given point in the subcomputation. Process continuations allow nonlocal exits to arbitrary points in the process tree and allow the capture of a subtree of a computation as a composable continuation for later use. Even in the absence of multiple processes, the precise control achievable with process continuations makes them more useful than traditional continuations.