Abstract
After a review of semaphores and monitors the principles underlying the programming language OCCAM are outlined. We show how it can also be used as a specification language. We also examine in detail the language CCS, principely by giving examples of processes or specifications. We end with some remarks on the issues raised by these modern languages which on the one hand may be viewed as programming languages for highly parallel architectures and on the other languages for specifying the required behaviour of systems.
Preview
Unable to display preview. Download preview PDF.
References
E. Dykstra, "The Hiararchical Design of Processes". Acta Informatica 1, pp.115–138, 1971.
G. Andrews and F. Schneider, "Concepts and Notations for Concurrent Programming", Computing Surveys 15, no.1, pp.3–43, 1983.
P. Brinch Hansen, "The Programming Language Concurrent Pascal", IEEE Transactions on Software Engineering, vol.1 (2), pp.199–207, 1975.
B. Lampson and D. Redell, "Experience with Processes and Monitors in Mesa", CACM vol.23 (2), pp.105–117, 1980.
Inmos Ltd., "OCCAM Programming Manual", Prentice-Hall, 1984.
R. Milner, "A Calculus for Communicating Systems", Lecture Notes in Computer Science, vol., Springer-Verlag, 1980.
C. Hoare, "Communicating Sequential Processes", Prentice-Hall, 1985.
D. Austry and G. Boudol, "Algèbre des Processus et Synchronisation", Theoret. Comp. Science 30, No.1, pp.91–132, 1984.
J. Bergstra and J. Klop, "Process Algebra for Synchronous Communication", Information and Control 60, pp.109–137, 1984.
150 DP8807, "LOTOS — A Formal Description Technique based on Temporal Ordering of Observational Behaviour", 1985.
G. Plotkin, "A Structural Approach to Operational Semantics", University of Aarhus Notes, 1982.
R. De Nicola and M. Hennessy, "Testing Equivalences for Processes", Theor. Computer Science 34, pp.84–133, 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Hennessy, M. (1987). Communication primitives in programming and specification languages. In: Müller, G., Blanc, R.P. (eds) Networking in Open Systems. Lecture Notes in Computer Science, vol 248. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0026964
Download citation
DOI: https://doi.org/10.1007/BFb0026964
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-17707-4
Online ISBN: 978-3-540-47777-8
eBook Packages: Springer Book Archive