Abstract
Reppy's language CML extends Standard ML of Milner et al. with primitives for communication. It thus inherits a notion of strong polymorphic typing and may be equipped with a structural operational semantics. As a first step we formulate an effect system for statically expressing the communication behaviours of CML programs as these are not reflected in the types. As a second step we adapt the structural operational semantics of CML so as to incorporate behaviours. We then show how types and behaviours evolve in the course of computation: types may decrease and behaviours may loose alternatives as well as decrease. As the syntax of behaviours is rather similar to that of a process algebra our main result may therefore be viewed as regarding the semantics of a process algebra as an abstraction of the semantics of an underlying programming language. This establishes a new kind of connection between “realistic” concurrent programming languages and “theoretical” process algebras.
Preview
Unable to display preview. Download preview PDF.
References
D. Berry, R. Milner, D.N. Turner: A semantics for ML concurrency primitives. Proceedings of POPL'92, ACM Press, 1992, pages 119–129.
G. Castagna, G. Ghelli, G. Longo: A Calculus for Overloaded Functions with Subtyping. Proceedings of the 1992 ACM Conference on Lisp and Functional Programming, ACM Press, 1992, pages 182–192.
C. Crasemann: πλ-Kalküle für Prozesse und Funktionen. Ph.D.-Thesis, Christian-Albrechts-Universität zu Kiel, 1992.
A. Giacalone, P. Mishra, S. Prasad: Operational and Algebraic Semantics for Facile: A Symmetric Integration of Concurrent and Functional Programming. Proceedings of ICALP '90, SLNCS 443, pages 765–780, 1990.
K. Havelund, K.G. Larsen: The Fork Calculus. To appear in Proceedings of ICALP '93, 1993.
H. Hüttel, K.G. Larsen: A Dynamic Type System for Higher-Order Processes. Manuscript, 1992.
J.J.-Levy, B. Thomsen, L. Leth, A. Giacalone: Esprit Basic Research Action 6454 — CONFER: CONcurrency and Functions: Evaluation and Reduction. EATCS Bulletin No. 48, 1992, pages 88–106.
J.M. Lucassen, D.K. Gifford: Polymorphic Effect Systems. Proceedings of POPL'88, ACM Press, 1988, pages 47–57.
R. Milner: The Polyadic π-Calculus: A Tutorial. Report ECS-LFCS-91-180, Laboratory for Foundations of Computer Science, University of Edinburgh, 1991.
F. Nielson: The Typed Lambda-Calculus with First-Class Processes. Proceedings of PARLE'89, Springer Lecture Notes in Computer Science 366, 1989, pages 357–373.
F. Nielson, H.R. Nielson: Two-Level Functional Languages. Cambridge University Press, 1992.
F. Nielson, H.R. Nielson: From CML to Process Algebras. Report DAIMI PB-433, Dept. of Computer Science, Aarhus University, 1993.
E.G.J.M.H. Nocker, J.E.W. Smetsers, M.C.J.D. van Eekelen, M.J. Plasmeijer: Concurrent Clean. Proceedings of PARLE'91, SLNCS 506, pages 202–219, 1991.
J.H. Reppy: CML: A Higher-order Concurrent Language. Proceedings of the ACM SIGPLAN '91 Conference on Programming Language Design and Implementation, ACM Press, 1991, pages 293–305.
J.H. Reppy: Higher-Order Concurrency. Ph.D.-Thesis, Report 92-1285, Department of Computer Science, Cornell University, 1992. [16] J.-P. Talpin, P. Jouvelot: The Type and Effect Discipline. Proceedings of LICS'92, 1992, pages 162–173.
B. Thomsen: A Calculus of Higher Order Communicating Systems. Proceedings of POPL'89, ACM Press, 1989, pages 143–154.
B. Thomsen: Calculi for Higher Order Communicating Systems. Ph.D.-Thesis, Imperial College, University of London, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nielson, F., Nielson, H.R. (1993). From CML to process algebras. In: Best, E. (eds) CONCUR'93. CONCUR 1993. Lecture Notes in Computer Science, vol 715. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57208-2_34
Download citation
DOI: https://doi.org/10.1007/3-540-57208-2_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57208-4
Online ISBN: 978-3-540-47968-0
eBook Packages: Springer Book Archive