Abstract
We introduce an untyped λ-calculus with input-output, based on Gordon's continuation-passing model of input-output. This calculus is intended to allow the classification of possibly infinite input-output behaviors, such as those required for servers or distributed systems. We define two terms to be operationally approximate iff they have similar behaviors in any context. We then define a notion of applicative approximation and show that it coincides with operational approximation for these new behaviors. Last, we consider the theory of pure λ-terms under this notion of operational equivalence.
This work is partly supported by NSF Grants CCR-9417382, CCR-9304144, and by Polish KBN Grant 2 P301 031 06.
Work supported by the National Science Foundation under grants number CCR-9304144 and CCR-9404646.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Samson Abramsky. The lazy lambda calculus. In David A. Turner, editor, Research Topics in Functional Programming, pages 65–116. Addison-Wesley, 1990.
Andrew D. Gordon. Functional Programming and Input/Output. Cambridge University Press, Cambridge, 1994.
Andrew D. Gordon. Bisimilarity as a Theory of Functional Programming. In Proceedings of 11th Conference on Mathematical Foundations of Programming Semantics, 1995.
Furio Honsell, Ian A. Mason, Scott Smith, and Carolyn Talcott. A Variable Typed Logic of Effects. Information and Computation, 119:55–90, 1995.
Douglas J. Howe. Equality in Lazy Computation Systems. In Proc. 4th IEEE Symposium on Logic in Computer Science, pages 198–203, 1989.
Douglas J. Howe. A Note on Proving Congruence of Bisimulation in a Generalized Lambda Calculus. unpublished manuscript, 1995.
Douglas J. Howe. Proving Congruence of Bisimulation in Functional Programming Languages. to appear in Information and Computation, 1996.
Robin Milner. Fully abstract models of typed lambda-calculi. Theoretical Computer Science, 4:1–22, 1977.
Robin Milner. Operational and Algebraic Semantics of Concurrent Processes. In Jan van Leeuwen, editor, Handbook of Theoretical Computer Science, pages 1201–1242. MIT Press/Elsevier, 1990.
Gordon D. Plotkin. LCF Considered as a Programming Language. Theoretical Computer Science, 5:223–255, 1977.
Davide Sangiorgi. The Lazy Lambda Calculus in a Concurrency Scenario. Information and Computation, 111(1):120–153, May 1994. Preliminary version appeared in Proc. 7th IEEE Symposium on Logic in Computer Science, 1992.
Jerzy Tiuryn and Mitchell Wand. Adding Input-Output to PCF (Technical Summary). submitted for publication, July 1995.
Jerzy Tiuryn and Mitchell Wand. Untyped Lambda-Calculus with Input-Output (Progress Report). presented at Atlantique meeting, La Jolla, June 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tiuryn, J., Wand, M. (1996). Untyped lambda-calculus with input-output. In: Kirchner, H. (eds) Trees in Algebra and Programming — CAAP '96. CAAP 1996. Lecture Notes in Computer Science, vol 1059. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61064-2_46
Download citation
DOI: https://doi.org/10.1007/3-540-61064-2_46
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61064-9
Online ISBN: 978-3-540-49944-2
eBook Packages: Springer Book Archive