Abstract
The paper describes the basic concept of a reversible functional computing machine which can reduce a program term to its (weak) normal form and then do inverse reductions which re-construct the initial program term. The machine under consideration is a variant of Landin’s secd-machine which can evaluate terms of a simple applied λ-calculus both applicative and normal order. It includes some auxiliary run-time structures to accommodate the environment necessary for reverse computations. The machine is specified in terms of the state transition rules for both forward and backward computations.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Ait-Kuci, H.: The WAM: A (Real) Tutorial, Technical Report, Digital Equipment Corporation, Paris Research Labs (1990)
Barendregt, H.P.: The Lambda Calculus, Its Syntax and Semantics. Studies in Logic and the Foundations of Mathematics, vol. 103. North-Holland, Amsterdam (1981)
Benett, C.: Logical Reversibility of Computation. IBM Journal of Research and Development 17, 525–532 (1973)
Benioff, P.: The Computer as a Physical System: A Microscopic Quantum Mechanical Hamiltonian Model ofComputers as Represented by Turing Machines. Journal of Statistical Physics 22, 563–591 (1980)
Benioff, P.: Quantum Mechanical Models of Turing Machines that Dissipate no Heat. Physical Review Letters 48, 1581–1585 (1982)
Berkling, K.J.: Reduction Languages for Reduction Machines. In: Proceedings of the 2nd Annual Symposium on Computer Architecture, pp. 133–140. ACM/IEEE 75CH0916- 7C (1975)
Berkling, K.J.: Computer Architecture for Correct Programming. In: Proceedings of the 5th Annual Symposium on Computer Architecture, pp. 78–84. ACM/IEEE (1978)
Cardelli, L., McQueen, D.: The Functional Abstract Machine,The ML/LCF/HOPE Newsletter. AT&T, Bell Labs., Murray Hill, NJ (1983)
Church, A.: The Calculi of Lambda Conversion. Princeton University Press, Princeton (1941)
Fredkin, E., Toffoli, T.: Conservative Logic. Int. Journal of Theoretical Physics 21, 219–253 (1982)
Gaertner, D., Kluge, W.E.: π-RED + - an interactive compiling graph reduction system for an applied λ-calculus. Journal of Functional Programming 6(Part 5), 723–757 (1996)
Goldson, D.: A Symbolic Calculator for Non-Strict Functional Programs. The Computer Journal 37(3), 177–187 (1994)
Hindley, J.R., Seldin, J.P.: Introduction to Combinators and λ-Calculus, London Mathematical Society Student Texts . Cambridge University Press, Cambridge (1986)
Huelsbergen, L.: A logically reversible evaluator for the call-by-name lambda calculus. In: Toffoli, T., Biafore, M., Leao, J. (eds.) PhysCompm 1996, pp. 159–167. New England Complex Systems Institute (1996)
Johnsson, T.: Compiling Lazy Functional Languages, PhD Thesis, Chalmers University of Technology, Goeteborg (1987)
Kluge, W.E.: A User’s Guide for the Reduction System π-RED, Internal Report 9409, Dept. of Computer Science, University of Kiel, Germany (1994)
Landin, P.J.: The Mechanical Evaluation of Expressions. The Computer Journal 6(4), 308–320 (1964)
Toffoli, T.: Bicontinuous Extensions of Invertible Combinatorial Functions. Mathematical Systems Theory 14, 13–23 (1981)
Warren, D.H.D.: An Abstract Prolog Instruction Set, Technical Note 309. SRI International, Menlo Park, CA (1983)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kluge, W. (2000). A Reversible SE(M)CD Machine. In: Koopman, P., Clack, C. (eds) Implementation of Functional Languages. IFL 1999. Lecture Notes in Computer Science, vol 1868. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10722298_6
Download citation
DOI: https://doi.org/10.1007/10722298_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67864-9
Online ISBN: 978-3-540-44658-3
eBook Packages: Springer Book Archive