The theory and practice of first-class prompts
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Computational lambda-calculus and monads
Proceedings of the Fourth Annual Symposium on Logic in computer science
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
A dynamic extent control operator for partial continuations
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The revised report on the syntactic theories of sequential control and state
Theoretical Computer Science
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lisp and Symbolic Computation
Reasoning about programs in continuation-passing style
Lisp and Symbolic Computation - Special issue on continuations—part I
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
Proceedings of the first ACM SIGPLAN international conference on Functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Online partial evaluation for shift and reset
PEPM '02 Proceedings of the 2002 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation
Final shift for call/cc:: direct implementation of shift and reset
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
From control effects to typed continuation passing
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Revised Report on the Algorithmic Language Scheme
Higher-Order and Symbolic Computation
Continuations: A Mathematical Semantics for Handling FullJumps
Higher-Order and Symbolic Computation
Higher-Order and Symbolic Computation
Portable implementation of continuation operators in imperative languages by exception handling
Advances in exception handling techniques
Linearly Used Effects: Monadic and CPS Transformations into the Linear Lambda Calculus
FLOPS '02 Proceedings of the 6th International Symposium on Functional and Logic Programming
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Rabbit: A Compiler for Scheme
On the call-by-value CPS transform and its semantics
Information and Computation
A type-theoretic foundation of continuations and prompts
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
THEORETICAL PEARL: A simple proof of a folklore theorem about delimited control
Journal of Functional Programming
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
A proof-theoretic foundation of abortive continuations
Higher-Order and Symbolic Computation
Axioms for control operators in the CPS hierarchy
Higher-Order and Symbolic Computation
An approach to call-by-name delimited continuations
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Context-based proofs of termination for typed delimited-control operators
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
A type-theoretic foundation of delimited continuations
Higher-Order and Symbolic Computation
On typing delimited continuations: three new solutions to the printf problem
Higher-Order and Symbolic Computation
Typed dynamic control operators for delimited continuations
FLOPS'08 Proceedings of the 9th international conference on Functional and logic programming
Equational axiomatization of call-by-name delimited control
Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming
Subtyping delimited continuations
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Proceedings of the 10th ACM international conference on Generative programming and component engineering
A rational deconstruction of landin's SECD machine
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
A hierarchy for delimited continuations in call-by-name
FOSSACS'10 Proceedings of the 13th international conference on Foundations of Software Science and Computational Structures
Applicative bisimulations for delimited-control operators
FOSSACS'12 Proceedings of the 15th international conference on Foundations of Software Science and Computational Structures
Normal form bisimulations for delimited-control operators
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
Higher-Order and Symbolic Computation
Hi-index | 0.00 |
The shift and reset operators, proposed by Danvy and Filinski, are powerful control primitives for capturing delimited continuations. Delimited continuation is a similar concept as the standard (unlimited) continuation, but it represents part of the rest of the computation, rather than the whole rest of computation. In the literature, the semantics of shift and reset has been given by a CPS-translation only. This paper gives a direct axiomatization of calculus with shift and reset, namely, we introduce a set of equations, and prove that it is sound and complete with respect to the CPS-translation. We also introduce a calculus with control operators which is as expressive as the calculus with shift and reset, has a sound and complete axiomatization, and is conservative over Sabry and Felleisen's theory for first-class continuations.