Linear Continuation-Passing

@article{Berdine2002LinearC,
  title={Linear Continuation-Passing},
  author={Josh Berdine and P. O'Hearn and U. Reddy and Hayo Thielecke},
  journal={Higher-Order and Symbolic Computation},
  year={2002},
  volume={15},
  pages={181-208}
}
Continuations can be used to explain a wide variety of control behaviours, including calling/returning (procedures), raising/handling (exceptions), labelled jumping (goto statements), process switching (coroutines), and backtracking. However, continuations are often manipulated in a highly stylised way, and we show that all of these, bar backtracking, in fact use their continuations linearly; this is formalised by taking a target language for CPS transforms that has both intuitionistic and… Expand
From control effects to typed continuation passing
Answer Type Polymorphism in Call-by-Name Continuation Passing
Typing Coroutines
A Small-Step Semantics of a Concurrent Calculus with Goroutines and Deferred Functions
  • M. Steffen
  • Computer Science
  • Theory and Practice of Formal Methods
  • 2016
Equational axiomatization of call-by-name delimited control
Linear types for computational effects
A Game Semantics of Linearly Used Continuations
  • J. Laird
  • Mathematics, Computer Science
  • FoSSaCS
  • 2003
Continuation-passing for C: a space-efficient implementation of concurrency
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 67 REFERENCES
Comparing Control Constructs by Double-Barrelled CPS
Constraining control
Using a Continuation Twice and Its Implications for the Expressive Power of call/cc
On proving syntactic properties of CPS programs
From Algol to polymorphic linear lambda-calculus
...
1
2
3
4
5
...