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.
CITATION STYLE
Magee, J., Eisenbach, S., & Kramer, J. (1995). Modelling Darwin in the π-calculus. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 938, pp. 133–152). Springer Verlag. https://doi.org/10.1007/3-540-60042-6_10
Mendeley helps you to discover research relevant for your work.