MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Abstracting Control (1990) [61 citations — 3 self]

by Olivier Danvy ,  Andrzej Filinski
In Proceedings of the 1990 ACM Conference on LISP and Functional Programming
Add To MetaCart

Abstract:

The last few years have seen a renewed interest in continuations for expressing advanced control structures in programming languages, and new models such as Abstract Continuations have been proposed to capture these dimensions. This article investigates an alternative formulation, exploiting the latent expressive power of the standard continuation-passing style (CPS) instead of introducing yet other new concepts. We build on a single foundation: abstracting control as a hierarchy of continuations, each one modeling a specific language feature as acting on nested evaluation contexts. We show how iterating the continuation-passing conversion allows us to specify a wide range of control behavior. For example, two conversions yield an abstraction of Prologstyle backtracking. A number of other constructs can likewise be expressed i...

Citations

2010 The Design and Analysis of Computer Algorithms – Aho, Hopcroft, et al. - 1974
225 Call-by-name, call-by-value, and the -calculus – Plotkin - 1975
224 Definitional interpreters for higher-order programming languages – Reynolds - 1972
68 A Theory of Programming Language Semantics – Milne, Srachey - 1963
53 Abstract continuations: A mathematical semantics for handling full functional jumps – Felleisen, Wand, et al. - 1988
45 Sussman with Julie Sussman. Structure and Interpretation of Computer Programs – Abelson, Jay - 1985
39 A functional abstraction of typed contexts – Danvy, Filinski - 1989
34 Intensions and extensions in the reflective tower – Danvy, Malmkjaer - 1988
33 Beyond continuations – Felleisen, Friedman, et al. - 1987
29 Embedding Continuations in Procedural Objects – Haynes, Friedman - 1987
13 Proving algorithms by tail functions – Mazurkiewicz - 1971
9 GL -- A Denotational Testbed with Continuations and Partial Continuations as First-Class Objects – Johnson - 1987
5 A bonus from van Wijngaarden’s device – Morris - 1972
4 Felleisen: The Theory and Practice of First-Class Prompts – Matthias - 1988
3 MultiScheme: A Parallel Processing – Miller - 1987
3 Moggi: Computational Lambda-calculus and Monads – Eugenio - 1989
2 Eugene Kohlbecker: Programming with Continuations – Friedman, Haynes - 1984
2 Duggan: Stores and Partial Continuations as First-Class Objects in a Language and its Environment – Johnson, Dominic - 1988
1 Barendregt: The Lambda Calculus, Its Syntax and Semantics, revised edition – Hendrick - 1985
1 Danvy: Programming with Tighter Control, pp 10-29 of the BIGRE journal, No 65 on Putting Scheme to – Olivier - 1989
1 Lambda Calculus Schemata, proceedings of the ACM conference Proving assertions about programs pp 104-109 – Fischer - 1972
1 Malmkjaer: On some Semantic Aspects of the Reflective Tower – Karoline - 1989
1 On the Relation between Direct and – Reynolds