Abstract
A distributed program can be viewed as a composition of three parts. Firstly, there is a coordination part which provides a hierarchical structure of components with dynamic binding. Secondly, there is the actual communication part which provides the interaction and synchronisation required by the system. Finally, there is the computation part providing the component programs.
Darwin is a language for describing distributed configurations in terms of component types, their instantiation to components with interfaces and the binding of those interfaces. A Darwin program thus defines a class of configurations. Although the language is very small it contains second-order constructs: component types can appear as parameters in the instantiation of other component types. Furthermore Darwin provides support for dynamic run-time instantiation of components. Component types therefore must have a run-time representation.
The coordination part of a distributed program has to be closely associated with the communication and computation part, as only the combination of the three will yield the complete program. On the semantic level we can achieve this by using the same formal description technique for all three. The π-calculus can serve as such a technique. The higher-orderedness of the coordination language can be captured by using the higher-order π-calculus. The semantics gives a precise meaning to Darwin programs. It turns out that by using the higher-order π-calculus this semantics can be expressed in a very concise and clear manner.
Preview
Unable to display preview. Download preview PDF.
References
S. Eisenbach and R. Paterson. π-calculus semantics for the concurrent configuration language darwin. In Proc. of the 26th Annual Hawaii Int. Conf. on System Sciences, volume 2. IEEE Computer Society Press, 1993.
J. Kramer, J. Magee, M. Sloman, and N. Dulay. Configuring object-based distributed programs in REX. IEE Software Engineering Journal, 7(2):139–149, March 1992.
J. Magee, J. Kramer, and N. Dulay. Darwin/mp: An environment for parallel and distributed programming. In Proc. of the 26th Annual Hawaii Int. Conf. on System Sciences, volume 2. IEEE Computer Society Press, 1993.
J. Magee, J. Kramer, and M. Sloman. Constructing distributed programs in conic. IEEE Transactions on Software Engineering, 15(6), 1989.
R. Milner. The polyadic π-calculus: a tutorial. Technical Report, ECS-LFCS 91-180, University of Edinburgh, October 1991.
Robin Milner, Joachim Parrow, and David Walker. A calculus of mobile processes, I and II. Information and Computation, 100:1–77, 1992. Also as Tech. Rep. ECS-LFCS 89-85/86, University of Edinburgh.
Benjamin Pierce, Didier Rémy, and David Turner. Pict: A typed, higher-order concurrent programming language based on the π-calculus, 1994. Available by anonymous FTP from pub/bcp on ftp.dcs.ed.ac.uk.
M. Radestock and S. Eisenbach. What do yon get from a π-calculus semantics? In Proc. of PARLE'94 Parallel Architectures and Languages Europe, number 817 in Lecture Notes in Computer Science, pages 635–647. Springer-Verlag, 1994.
Davide Sangiorgi. From π-calculus to higher-order π-calculus — and back. Technical report, Computer Science Dept., University of Edinburgh, 1992.
Davide Sangiorgi. Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. PhD thesis, Computer Science Dept., University of Edinburgh, May 1993.
D. Walker. Some results on the π-calculus. In Concurrency: Theory, Language, and Architecture, Oxford, UK, September 1989.
D. Walker. π-calculus semantics of object-oriented programming languages. In Conf. on Theoretical Aspects of Computer Software, Tohoku University, Japan, September 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Radestock, M., Eisenbach, S. (1996). Semantics of a higher-order coordination language. In: Ciancarini, P., Hankin, C. (eds) Coordination Languages and Models. COORDINATION 1996. Lecture Notes in Computer Science, vol 1061. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61052-9_55
Download citation
DOI: https://doi.org/10.1007/3-540-61052-9_55
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61052-6
Online ISBN: 978-3-540-49936-7
eBook Packages: Springer Book Archive