Skip to main content

Functions as processes

  • Conference paper
  • First Online:
Automata, Languages and Programming (ICALP 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 443))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramsky, S., The Lazy Lambda Calculus, to appear in Declarative Programming, ed. D. Turner, Addison Wesley, 1988.

    Google Scholar 

  2. Astesiano, E. and Zucca, E., Parametric channels via Label Expressions in CCS, Journal of Theor. Comp. Science, Vol 33, pp45–64, 1984.

    Google Scholar 

  3. Bergstra, J.A. and Klop, J-W., Algebra of Communicating Processes with Abstraction, Journal of Theor. Comp. Science, Vol 33, pp77–121, 1985.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. Berry, G. and Boudol, G., The Chemical Abstract Machine, to appear in Proc 17th Annual Symposium on Principles of Programming Languages, 1990.

    Google Scholar 

  6. 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.

    Google Scholar 

  7. Curry, H.B. and Feys, R., Combinatory Logic, Vol 1, North Holland, 1958.

    Google Scholar 

  8. Clinger, W.D., Foundations of Actor Semantics, AI-TR-633, MIT Artificial Intelligence Laboratory, 1981.

    Google Scholar 

  9. Engberg, U. and Nielsen, M., A Calculus of Communicating Systems with Labelpassing, Report DAIMI PB-208, Computer Science Department, University of Aarhus, 1986.

    Google Scholar 

  10. Girard, J.-Y., Linear Logic, Journal of Theoretical Science, Vol 50, pp111–102, 1987.

    Google Scholar 

  11. Hoare, C.A.R., Communicating Sequential Processes, Prentice Hall, 1985.

    Google Scholar 

  12. Milner, R., Fully Abstract Models of Typed Lambda-calculi, Journal of Theoretical Science, Vol 5, pp1–23, 1977.

    Google Scholar 

  13. Milner, R., Communication and Concurrency, Prentice Hall, 1989.

    Google Scholar 

  14. Milner, R., Functions as Processes, Internal Report, INRIA, Sophia Antipolis, December 1989.

    Google Scholar 

  15. 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.

    Google Scholar 

  16. Nielsen, F., The Typed λ-calculus with First-class Processes, Report ID-TR:1988-43, Inst. for Datateknik, Tekniske Hojskole, Lyngby, Denmark, 1988.

    Google Scholar 

  17. Ong, C-H.L., Fully Abstract Models of the Lazy Lambda Calculus, Proc 29th Symposium on Foundations of Computer Science, pp368–376, 1988.

    Google Scholar 

  18. Plotkin, G.D., Call-by-name and Call-by-value and the λ-calculus, Journal of Theoretical Science, Vol 1, pp125–159, 1975.

    Google Scholar 

  19. Thomsen, B., A Calculus of Higher-order Communicating Systems, Proc 16th Annual Symposium on Principles of Programming Languages, pp143–154, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michael S. Paterson

Rights and permissions

Reprints 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

Publish with us

Policies and ethics