ORBIT: an optimizing compiler for scheme
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
A formulae-as-type notion of control
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Notions of computation and monads
Information and Computation
Compiling with continuations
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
A generic account of continuation-passing styles
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ESOP'92 Selected papers of the symposium on Fourth European symposium on programming
The discoveries of continuations
Lisp and Symbolic Computation - Special issue on continuations—part I
Reasoning about programs in continuation-passing style
Lisp and Symbolic Computation - Special issue on continuations—part I
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proper tail recursion and space efficiency
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Embedding type structure in semantics
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Essentials of programming languages (2nd ed.)
Essentials of programming languages (2nd ed.)
Definitional Interpreters for Higher-Order Programming Languages
Higher-Order and Symbolic Computation
Proceedings of the 5th International Symposium on Functional and Logic Programming
FLOPS '01 Proceedings of the 5th International Symposium on Functional and Logic Programming
Formalizing Implementation Strategies for First-Class Continuations
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
Correctness of Procedure Representations in Higher-Order Assembly Language
Proceedings of the 7th International Conference on Mathematical Foundations of Programming Semantics
Proving Syntactic Properties of Exceptions in an Ordered Logical Framework
FLOPS '01 Proceedings of the 5th International Symposium on Functional and Logic Programming
A Higher-Order Colon Translation
FLOPS '01 Proceedings of the 5th International Symposium on Functional and Logic Programming
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Natural Deduction for Intuitionistic Non-communicative Linear Logic
TLCA '99 Proceedings of the 4th International Conference on Typed Lambda Calculi and Applications
Continuation Semantics in Typed Lambda-Calculi (Summary)
Proceedings of the Conference on Logic of Programs
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
The Occurrence of Continuation Parameters in CPS Terms
The Occurrence of Continuation Parameters in CPS Terms
Rabbit: A Compiler for Scheme
Extracting constructive content from classical proofs
Extracting constructive content from classical proofs
Ordered linear logic and applications
Ordered linear logic and applications
Syntactic accidents in program analysis: on the impact of the CPS transformation
Journal of Functional Programming
From control effects to typed continuation passing
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
A sound and complete axiomatization of delimited continuations
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Syntactic accidents in program analysis: on the impact of the CPS transformation
Journal of Functional Programming
Verifying CPS transformations in Isabelle/HOL
MERLIN '03 Proceedings of the 2003 ACM SIGPLAN workshop on Mechanized reasoning about languages with variable binding
Mechanically verifying correctness of CPS compilation
CATS '06 Proceedings of the 12th Computing: The Australasian Theroy Symposium - Volume 51
A new one-pass transformation into monadic normal form
CC'03 Proceedings of the 12th international conference on Compiler construction
Mechanically verifying correctness of CPS compilation
CATS '06 Proceedings of the Twelfth Computing: The Australasian Theory Symposium - Volume 51
Hi-index | 0.00 |
We present a new transformation of call-by-value lambda-terms into continuation-passing style (CPS). This transformation operates in one pass and is both compositional and first-order. Because it operates in one pass, it directly yields compact CPS programs that are comparable to what one would write by hand. Because it is compositional, it allows proofs by structural induction. Because it is first-order, reasoning about it does not require the use of a logical relation.This new CPS transformation connects two separate lines of research. It has already been used to state a new and simpler correctness proof of a direct-style transformation, and to develop a new and simpler CPS transformation of control-flow information.