Higher-Order and Symbolic Computation

, Volume 12, Issue 1, pp 7–45

Implementation Strategies for First-Class Continuations

  • William D. Clinger
  • Anne H. Hartheimer
  • Eric M. Ost
Open AccessArticle

DOI: 10.1023/A:1010016816429

Cite this article as:
Clinger, W.D., Hartheimer, A.H. & Ost, E.M. Higher-Order and Symbolic Computation (1999) 12: 7. doi:10.1023/A:1010016816429


Scheme and Smalltalk continuations may have unlimited extent. This means that a purely stack-based implementation of continuations, as suffices for most languages, is inadequate. We review several implementation strategies for continuations and compare their performance using instruction counts for the normal case and continuation-intensive synthetic benchmarks for other scenarios, including coroutines and multitasking. All of the strategies constrain a compiler in some way, resulting in indirect costs that are hard to measure directly. We use related measurements on a set of benchmarks to calculate upper bounds for these indirect costs.

continuationsstacksheap allocationcoroutinesmultitaskingSchemeSmalltalk
Download to read the full article text

Copyright information

© Kluwer Academic Publishers 1999

Authors and Affiliations

  • William D. Clinger
    • 1
  • Anne H. Hartheimer
  • Eric M. Ost
  1. 1.College of Computer ScienceNortheastern UniversityBoston