Comparing control constructs by typing double-barrelled cps transforms (2001) [7 citations — 1 self]
Abstract:
We investigate continuation-passing style transforms that pass two continuations. Altering a single variable in the translation of-abstraction gives rise to different control operators: firstclass continuations; dynamic control; and (depending on a further choice of a variable) either the return statement of C; or Landin's J-operator. In each case there is an associated simple typing. For those constructs that allow upward continuations, the typing is classical, for the others it remains intuitionistic, giving a clean distinction independent of syntactic details. 1
Citations
| 251 | Call-by-name, call-by-value and the *-calculus – Plotkin - 1975 |
| 224 | Definitional interpreters for higher-order programming languages. Higher-Order and Symbolic – Reynolds - 1998 |
| 168 | Revised report on the algorithmic language Scheme – Kelsey, Clinger, et al. - 1998 |
| 162 | A formulae-as-types notion of control – Griffin - 1990 |
| 84 | Continuations: A mathematical semantics for handling full jumps – Strachey, Wadsworth - 1974 |
| 21 | A generalization of jumps and labels – Landin - 1998 |
| 13 | Assessing the overhead of ML exceptions by selective CPS transformation – Kim, Yi, et al. - 1998 |
| 10 | Linearly used continuations – Berdine, O’Hearn, et al. - 2001 |
| 9 | and Hayo Thielecke. Typed exceptions and continuations cannot macro-express each other – Riecke - 1999 |
| 7 | Reflections on Landin’s J operator: a partly historical note – Felleisen - 1987 |
| 4 | the *-Calculus. Theoretical Computer Science – Call-by-Name - 1975 |
| 2 | An introduction to Landin's "A generalization of jumps and labels – Thielecke - 1998 |

