Abstract
A lambda-encoding such as the CPS transformation gives rise to administrative redexes. In his seminal article “Call-by-name, call- by-value and the lambda-calculus”, 25 years ago, Plotkin tackled administrative reductions using a so-called colon translation. In “Representing control, a study of the CPS transformation”, 15 years later, Danvy and Filinski integrated administrative reductions in the CPS transformation, making it operate in one pass. This one-pass transformation is higher-order, and can be used for other lambda-encodings, but we do not see its associated proof technique used in practice|instead, Plotkin’s colon translation appears to be favored. Therefore, in an attempt to link the higher-order transformation and Plotkin’s proof technique, we recast Plotkin’s proof of Indifference and Simulation in a higher-order setting. To this end, we extend the colon translation from first order to higher order.
Extended version available as the technical report BRICS RS-00-33.
Basic Research in Computer Science (http://www.brics.dk/), Centre of the Danish National Research Foundation.
Acknowledgments
This work is supported by the ESPRIT Working Group APPSEM (http://www.md.chalmers.se/Cs/Research/Semantics/APPSEM/). Part of it was carried out while the second author was visiting John Hannan at Penn State, in the fall of 2000. We are grateful to the anonymous reviewers and to Julia Lawall for perceptive comments.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Andrew W. Appel. Compiling with Continuations. Cambridge University Press, New York, 1992.
Olivier Danvy, Belmina Dzac, and Frank Pfenning. On proving syntactic properties of CPS programs. In Third International Workshop on Higher-Order Operational Techniques in Semantics, volume 26 of Electronic Notes in Theoretical Computer Science, pages 19–31, Paris, France, September 1999. Also available as the technical report BRICS RS-99-23.
Olivier Danvy and Andrzej Filinski. Representing control, a study of the CPS transformation. Mathematical Structures in Computer Science, 2(4):361–391, December 1992.
Olivier Danvy and Kristoffer H∅gsbro Rose. Higher-order rewriting and partial evaluation. In Tobias Nipkow, editor, Rewriting Techniques and Applications, Lecture Notes in Computer Science, Kyoto, Japan, March 1998. Springer-Verlag. Extended version available as the technical report BRICS-RS-97-46.
Matthias Felleisen. The Calculi of λ-v-CS Conversion: A Syntactic Theory of Control and State in Imperative Higher-Order Programming Languages. PhD thesis, Department of Computer Science, Indiana University, Bloomington, Indiana, August 1987.
John Hatcliff and Olivier Danvy. A generic account of continuation-passing styles. In Hans-J. Boehm, editor, Proceedings of the Twenty-First Annual ACM Symposium on Principles of Programming Languages, pages 458–471, Portland, Oregon, January 1994. ACM Press.
John Hatcliff and Olivier Danvy. Thunks and the λ-calculus. Journal of Functional Programming, 7(2):303–319, 1997. Extended version available as the technical report BRICS RS-97-7.
Ulrik J∅rring and William L. Scherlis. Compilers and staging transformations. In Mark Scott Johnson and Ravi Sethi, editors, Proceedings of the Thirteenth Annual ACM Symposium on Principles of Programming Languages, pages 86–96, St. Petersburg, Florida, January 1986. ACM Press.
Gordon D. Plotkin. Call-by-name, call-by-value and the λ-calculus. Theoretical Computer Science, 1:125–159, 1975.
John C. Reynolds. The discoveries of continuations. Lisp and Symbolic Computation, 6(3/4):233–247, December 1993.
Guy L. Steele Jr. Rabbit: A compiler for Scheme. Technical Report AI-TR-474, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1978.
Mitchell Wand. Correctness of procedure representations in higher-order assembly language. In Stephen Brookes, Michael Main, Austin Melton, Michael Mislove, and David Schmidt, editors, Proceedings of the 7th International Conference on Mathematical Foundations of Programming Semantics, number 598 in Lecture Notes in Computer Science, pages 294–311, Pittsburgh, Pennsylvania, March 1991. Springer-Verlag.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Danvy, O., Nielsen, L.R. (2001). A Higher-Order Colon Translation. In: Kuchen, H., Ueda, K. (eds) Functional and Logic Programming. FLOPS 2001. Lecture Notes in Computer Science, vol 2024. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44716-4_5
Download citation
DOI: https://doi.org/10.1007/3-540-44716-4_5
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41739-2
Online ISBN: 978-3-540-44716-0
eBook Packages: Springer Book Archive