Abstract
This paper exhibits accurate encodings of the λ-calculus in the π-calculus. The former is canonical for calculation with functions, while the latter is a recent step [15] towards a canonical treatment of concurrent processes. With quite simple encodings, two λ-calculus reduction strategies are simulated very closely; each reduction in λ-calculus is mimicked by a short sequence of reductions in π-calculus. Abramsky's precongruence of applicative simulation [1] over λ-calculus is compared with that induced by the encoding of the lazy λ-calculus into π-calculus; a similar comparison is made for call-by-value λ-calculus.
The part of π-calculus which is needed for the encoding is formulated in a new way, inspired by Berry's and Boudol's Chemical Abstract Machine [5].
This research was partly done during sabbatical leave from Edinburgh University, on a four-month visit to INRIA at Sophia Antipolis, France. I am grateful both to Edinburgh University and to the French Ministry of Technology for their support.
Preview
Unable to display preview. Download preview PDF.
References
Abramsky, S., The Lazy Lambda Calculus, to appear in Declarative Programming, ed. D. Turner, Addison Wesley, 1988.
Astesiano, E. and Zucca, E., Parametric channels via Label Expressions in CCS, Journal of Theor. Comp. Science, Vol 33, pp45–64, 1984.
Bergstra, J.A. and Klop, J-W., Algebra of Communicating Processes with Abstraction, Journal of Theor. Comp. Science, Vol 33, pp77–121, 1985.
Berry, G., Modèles Complètement Adéquats et Stables des lambda-calcul typés, Thèse se Doctorat d'Etat, Université Paris VII, 1979.
Berry, G. and Boudol, G., The Chemical Abstract Machine, to appear in Proc 17th Annual Symposium on Principles of Programming Languages, 1990.
Boudol, G., Towards a Lambda-Calculus for Concurrent and Communicating Systems, Proc TAPSOFT 1989, Lecture Notes in Computer Science 351, Springer-Verlag, pp149–161, 1989.
Curry, H.B. and Feys, R., Combinatory Logic, Vol 1, North Holland, 1958.
Clinger, W.D., Foundations of Actor Semantics, AI-TR-633, MIT Artificial Intelligence Laboratory, 1981.
Engberg, U. and Nielsen, M., A Calculus of Communicating Systems with Labelpassing, Report DAIMI PB-208, Computer Science Department, University of Aarhus, 1986.
Girard, J.-Y., Linear Logic, Journal of Theoretical Science, Vol 50, pp111–102, 1987.
Hoare, C.A.R., Communicating Sequential Processes, Prentice Hall, 1985.
Milner, R., Fully Abstract Models of Typed Lambda-calculi, Journal of Theoretical Science, Vol 5, pp1–23, 1977.
Milner, R., Communication and Concurrency, Prentice Hall, 1989.
Milner, R., Functions as Processes, Internal Report, INRIA, Sophia Antipolis, December 1989.
Milner, R., Parrow, J.G. and Walker, D.J., A Calculus of Mobile Processes, Parts I and II, Report ECS-LFCS-89-85 and-86, Laboratory for Foundations of Computer Science, Computer Science Department, Edinburgh University, 1989.
Nielsen, F., The Typed λ-calculus with First-class Processes, Report ID-TR:1988-43, Inst. for Datateknik, Tekniske Hojskole, Lyngby, Denmark, 1988.
Ong, C-H.L., Fully Abstract Models of the Lazy Lambda Calculus, Proc 29th Symposium on Foundations of Computer Science, pp368–376, 1988.
Plotkin, G.D., Call-by-name and Call-by-value and the λ-calculus, Journal of Theoretical Science, Vol 1, pp125–159, 1975.
Thomsen, B., A Calculus of Higher-order Communicating Systems, Proc 16th Annual Symposium on Principles of Programming Languages, pp143–154, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Milner, R. (1990). Functions as processes. In: Paterson, M.S. (eds) Automata, Languages and Programming. ICALP 1990. Lecture Notes in Computer Science, vol 443. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0032030
Download citation
DOI: https://doi.org/10.1007/BFb0032030
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-52826-5
Online ISBN: 978-3-540-47159-2
eBook Packages: Springer Book Archive