Continuation tutorials timeline
This is a comprehensive timeline of continuation tutorials and related articles.
Please update this list as it becomes outdated! If you find a tutorial, article, post, comment, or message that stands on its own as an explanation of continuations, then please take a moment to paste the link somewhere on this page (register a throwaway account, if you prefer). The date, author, and blurb can be added later. This will greatly help others who are using this list as a resource for learning about continuations.
“It is always possible for the [human] computer to
break off from his work, to go away and forget all about it, and later to come
back and go on with it. If he does this he must leave a note of instructions
(written in some standard form) explaining how the work is to be continued.”
- On Computable Numbers, with an Application to the Entscheidungsproblem, Alan M. Turing (page 253).
year 2002
- 2002-09 CS590S: Lecture Notes 4 - Continuation-Passing Style
- "Continuation-passing style or CPS is a technique for implementing functional programs in which procedures are written so that they receive procedural arguments representing their future behavior"
year 2004
- 2004-12 CSE 341: Scheme: Continuations and exceptions
- "An expression's continuation is "the computation that will receive the result of that expression"."
year 2009
- 2009-06 F#: Continuation Passing Style - Mark Needham
- "As I understand it we can achieve a continuation passing style of programming by passing in the bit of code that we went executed next (i.e. the continuation) as an argument to a function."
- 2009-12 Continuations by example: Exceptions, time-traveling search, generators, threads, and coroutines - Matt Might
- "Concretely, a continuation is a procedure that represents the remaining steps in a computation."
- 2009-12 Continuations Made Simple and Illustrated - Denys Duchier
year 2010
- 2010-03 Computer Science 152 - References; Continuation passing style
- "Intuitively, a continuation represents “the rest of the program.”"
- 2010-11 By example: Continuation-passing style in JavaScript - Matt Might
year 2011
- 2011-06 2.9. Continuations and Continuation Passing
- "A continuation is a callback function k that represents the current state of the program’s execution."
year 2012
- 2012-06 Asynchronous programming and continuation-passing style in JavaScript - Axel Rauschmayer
year 2013
- 2013-07 The Racket Guide: 10.3 Continuations
- "A continuation is a value that encapsulates a piece of an expression’s evaluation context."
- 2013-05 School of Haskell: Understanding Continuations
- "In essence, a continuation is a function which represents the next block of code to be executed."
- 2013-09 CS421: MP 4 – Continuation-Passing Style
- "A function that is written in continuation- passing style does not return once it has finished computing. Instead, it calls another function (the continuation) with the result of the computation."
year 2014
- 2014-05 Why Are Continuations So Darn Cool? - Daniel Martins
- "A continuation can be viewed as the evaluation context surrounding an expression or, in other words, a snapshot of the current control state of the program."
year 2018
- 2018-12 Removing a recursion in Python, part 2 - Eric Lippert
- "The “continuation” in “continuation passing style” just means “what happens after”; the code that happens after a bit of code is the continuation of that code in your program."
year 2019
- 2019-06 Continuation Passing Style in Scheme
- "The continuation k contains the code that will be executed after (+ x y) is calculated."
- 2019-08 What is a continuation? - Eric Normand
- "Continuations have to do with how functions are called and then returned."
year 2020
- 2020-01 A Gentle Run-through of Continuation Passing Style and Its Use Cases - Ziyang Liu
- "In CPS, instead of returning some value, the function would take a continuation function, which represents what the caller would do with the returned value"
- 2020-03 Continuations - Michael Erdmann
- "What is a continuation? A function, used as a parameter by another function, and typically used to abstract away from “the rest of the computation”, or “what to do to finish a task”."
- 2020-05 Understanding Recursion and Continuation with Python - Nick Mose
- "A continuation is an abstract representation of the control state of a program."
- 2020-09 Lecture #19: Continuations
- "Intuitively, a continuation represents “the rest of the program.”"
- 2020-09 Continuations - Ernesto Hernández-Novich
- "... a «continuation» is: some sort of snapshot of the current «interesting values» and immediate «next step»."
year 2021
- 2021-01 Continuations FAQ (epoq diary 013) - Carl Mäsak
- "The continuation represents a running program at some point during its run."
- 2021-03 Continuations in Scala
- "The main idea of continuations ... is the ability to interrupt a program, save its control state, and resume it at a later point in time."