Linear Continuation-Passing

  • Authors:
  • Josh Berdine;Peter O'hearn;Uday Reddy;Hayo Thielecke

  • Affiliations:
  • Department of Computer Science, Queen Mary, University of London, London E1 4NS, United Kingdom. berdine@dcs.qmul.ac.uk;Department of Computer Science, Queen Mary, University of London, London E1 4NS, United Kingdom. ohearn@dcs.qmul.ac.uk;School of Computer Science, The University of Birmingham, Birmingham B15 2TT, United Kingdom. u.reddy@cs.bham.ac.uk;School of Computer Science, The University of Birmingham, Birmingham B15 2TT, United Kingdom. h.thielecke@cs.bham.ac.uk

  • Venue:
  • Higher-Order and Symbolic Computation
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Continuations can be used to explain a wide variety of control behaviours, including calling/returning (procedures), raising/handling (exceptions), labelled jumping (\tt 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 linear function types.