Share This Author
The essence of compiling with continuations
The combined effect of the three phases is equivalent to a source-to-source transformation that simulates the compaction phase and fully developed CPS compilers do not need to employ the CPS transformation but can achieve the same results with a simple source-level transformation.
Hygienic macro expansion
A change to the expansion algorithm is proposed so that macros will only violate the binding discipline when it is explicitly intended.
A Syntactic Theory of Sequential Control
Typing first-class continuations in ML
The soundness of the Damas–Milner polymorphic type assignment system with respect to this semantics is proved, and the full Damas-Milner type system is shown to be unsound in the presence of first-class continuations.
Reasoning with Continuations
Abstract continuations: a mathematical semantics for handling full jumps
- M. Felleisen, M. Wand, D. Friedman, B. Duba
- Computer ScienceLISP and Functional Programming
- 1 January 1988
This work introduces an abstract domain of rests of computations with appropriate operations for continuation semantics in modern Lisp-style languages, which contain advanced control structures like full functional jumps and control delimiters for which continuation semantics is insufficient.
From Macros to Reusable Generative Programming
This paper describes McMicMac, a framework for generative programming that uses tree-transforming macros as language specifications, and enhances them with inherited and synthesized attributes to describe general compilation tasks.
The essence of compiling with continuations (with retrospective)
A method using simplex, party-line transmission of electromagnetic signals for distributing and collecting data packet messages is described which, in the case of random failures, automatically seeks out alternate routes.
Call-by-Value Combinatory Logic and the Lambda-Value Calculus
Two by-value combinatory logics are presented and their equivalence with the λv-calculus is proved, and laziness to K terms is introduced so that the translation can preserve the structure of functions that do not use their argument.
The Essence of Compiling with ContinuationsCormac Flanagan
The CPS transformation provides an organizational principle that simpliies the construction of compilers and is studied to gain a better understanding of the role that the CPS transformation plays in the compilation process.