Skip to main content

Modelling darwin in the π-calculus

  • Conference paper
  • First Online:

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

Abstract

Darwin is a general purpose structuring tool of use in building complex distributed systems from diverse components and diverse component interaction mechanisms. It is in essence a declarative binding language which can be used to define hierarchic compositions of interconnected components. Distribution is dealt with orthogonally to system structuring. The language allows the specification of both static structures and dynamic structures which evolve during execution. The central abstractions managed by Darwin are components and services. Bindings are formed by manipulating references to services.

The paper describes the operational semantics of Darwin in terms of the π-calculus, Milner's calculus of mobile processes. The correspondence between the treatment of names in the π-calculus and the management of service references in Darwin leads to an elegant and concise π-calculus model of Darwin's operational semantics. The model has proved useful in arguing the correctness of Darwin implementations and in designing extensions to Darwin and reasoning about their behaviour. The paper discusses the reasons why other formalisms fail to capture elegantly the system structuring concepts on which Darwin is based.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ANSAware 4.1: Application Programming in ANSAware, Document RM.102.02, Architecture Projects Management Agency, Poseidon House, Castle Park, Cambridge CM3 0RD, UK, Feb. 1993.

    Google Scholar 

  2. Inmos Ltd, OCCAM 2 reference manual, Prentice Hall, 1988.

    Google Scholar 

  3. M. Barbacci, C. Weinstock, D. Doubleday, M. Gardner and R Lichota, Durra: a structure description language for developing distributed applications, IEE Software Engineering Journal, Vol. 8, No. 2, March 1993, pp83–94.

    Google Scholar 

  4. S. Eisenbach and R. Paterson, π-Calculus Semantics for the Concurrent Configuration Language Darwin, Proceedings of the 26th Annual Hawaii International Conference on System Sciences, Vol 2, IEEE Computer Society Press, 1993.

    Google Scholar 

  5. A. Harter, A. Hopper, A Distributed Location System for the Active Office, IEEE Network, Jan–Feb. 1994, pp. 62–70.

    Google Scholar 

  6. C.A.R. Hoare, Communicating sequential processes, Prentice-Hall, Englewood Cliffs, N.J., 1985.

    Google Scholar 

  7. J. Kramer, J. Magee, M. Sloman, N. Dulay, Configuring Object-Based Distributed Programs in Rex, IEE Software Engineering Journal, Vol. 7, 2, March 1992, pp139–149.

    Google Scholar 

  8. J. Magee,J. Kramer, and M. Sloman, Constructing Distributed Systems in Conic, IEEE Transactions on Software Engineering, SE-15 (6), 1989.

    Google Scholar 

  9. J. Magee, N. Dulay and J. Kramer, Structuring Parallel and Distributed Programs, IEE Software Engineering Journal, Vol. 8, No. 2, March 1993, pp73–82.

    Google Scholar 

  10. J.Magee, N. Dulay, J. Kramer, Regis: A Constructive Development Environment for Distributed Programs, Distributed Systems Engineering Journal, to appear.

    Google Scholar 

  11. R. Milner, Communication and Concurrency, Prentice-Hall, Englewood Cliffs, N. J., 1989.

    Google Scholar 

  12. R. Milner, The polyadic π-calculus: a tutorial, in Logic and Algebra of Specification, ed. F.L. Bauer, W. Brauer and H. Schwichttenberg, Springer Verlag, 1993, pp203–246.

    Google Scholar 

  13. R.Milner, J. Parrow, and D.Walker, A calculus of mobile processes, Parts I and II, Journal of Information and Computation, Vol. 100, pp1–40 and pp41–77, 1992.

    Google Scholar 

  14. R. Milner, Elements of Interaction — Turing Award Lecture, CACM, Vol 36, No. 1, January 1993, pp78–79.

    Google Scholar 

  15. J. Nehmer, D. Haban, F. Mattern, D. Wybranietz, D. Rombach, Key Concepts of the INCAS Multicomputer Project, IEEE Transactions on Software Engineering, SE-13 (8), August 1987.

    Google Scholar 

  16. M. Radestock and S. Eisenbach, What Do You Get From a π-calculus Semantics?, PARLE 94, Springer-Verlag, Lecture Notes in Computer Science No. 817, pp635–647, 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Kenneth P. Birman Friedemann Mattern André Schiper

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Magee, J., Eisenbach, S., Kramer, J. (1995). Modelling darwin in the π-calculus. In: Birman, K.P., Mattern, F., Schiper, A. (eds) Theory and Practice in Distributed Systems. Lecture Notes in Computer Science, vol 938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60042-6_10

Download citation

  • DOI: https://doi.org/10.1007/3-540-60042-6_10

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60042-8

  • Online ISBN: 978-3-540-49409-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics