Lably
Skip to content

Continuation

Representation of the control state of a computer program

  • 14 min read
  • 6 chapters

Related on Lably

Through Computer science, Abstraction (computer science) and Control flow

The "current continuation" or "continuation of the computation step" is the continuation that, from the perspective of running code, would be derived from the current point in a program's execution. The term continuations can also be used to refer to first-class continuations, which are constructs that give a programming language the ability to save the execution state at any point and return to that point at a later point in the program, possibly multiple times.

History

The earliest description of continuations was made by Adriaan van Wijngaarden in September 1964. Wijngaarden spoke at the IFIP Working Conference on Formal Language Description Languages held in Baden bei Wien, Austria. As part of a formulation for an Algol 60 preprocessor, he called for a transformation of proper procedures into continuation-passing style, though he did not use this name, and his intention was to simplify a program and thus make its result more clear.

Christopher Strachey, Christopher P. Wadsworth and John C. Reynolds brought the term continuation into prominence in their work in the field of denotational semantics that makes extensive use of continuations to allow sequential programs to be analysed in terms of functional programming semantics.

Steve Russell invented the continuation in his second Lisp implementation for the IBM 704, though he did not name it.

Reynolds (1993) gives a complete history of the discovery of continuations.

Sign in to keep reading

5 more chapters are free with a Lably account.

More in Computing and communication