The influence of coordination on program structure

We examine the inherent properties of some of the most popular coordination models of today and show how they contribute to the difficulty of systematic construction of coordination protocols for the cooperation of concurrent processes, as explicit, tangible pieces of software. They include the object oriented models of communication and the generative tuple space paradigm of models such as Linda. We then describe a new generic model: Idealized Worker Idealized Manager (IWIM) and discuss its advantages for coordination of concurrent activities, especially in control oriented applications. We demonstrate its "completeness" by showing that it can trivially emulate other well known communication and coordination models. Separation of computation and coordination code into different program modules is one of the important properties of this model, which is fully exploited in the pure coordination language MANIFOLD.

[1]  Jack Dongarra,et al.  Pvm 3 user's guide and reference manual , 1993 .

[2]  Jan van den Bos,et al.  A concurrent object-oriented language with protocols delegation and constraints , 2005 .

[3]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[4]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[5]  Farhad Arbab,et al.  Coordination of Distributed/Parallel Multi-grid Domain Decomposition , 1996, IRREGULAR.

[6]  Ian M. Holland,et al.  Contracts: specifying behavioral compositions in object-oriented systems , 1990, OOPSLA/ECOOP '90.

[7]  Farhad Arbab,et al.  Coordination of systems with real-time properties in manifold , 1996, Proceedings of 20th International Computer Software and Applications Conference: COMPSAC '96.

[8]  Farhad Arbab,et al.  Reusable coordinator modules for massively concurrent applications , 1996, Softw. Pract. Exp..

[9]  Antony I. T. Rowstron,et al.  Solving the LINDA Multiple rd Problem , 1996, COORDINATION.

[10]  Rolf Hempel,et al.  PARMACS V6.1 Specification , 1995 .

[11]  Jean-Marc Andreoli,et al.  Rule-Based Object Coordination , 1994, ECOOP Workshop.

[12]  Gul A. Agha,et al.  A Language Framework for Multi-Object Coordination , 1993, ECOOP.

[13]  Farhad Arbab,et al.  The IWIM Model for Coordination of Concurrent Activities , 1996, COORDINATION.

[14]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[15]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[16]  H. P Nii,et al.  Blackboard Systems , 1986 .

[17]  Stijn Bijnens,et al.  Sender-Initated and Receiver-Initated Coordination in a Global Object Space , 1994, ECOOP Workshop.

[18]  Daniel Le Métayer,et al.  The GAMMA Model and Its Discipline of Programming , 1990, Sci. Comput. Program..

[19]  Farhad Arbab,et al.  Coordination of massively concurrent activities , 1995 .

[20]  A. A. Holzbacher A Software Environment for Concurrent Coordinated Programming , 1996, COORDINATION.

[21]  Colin Atkinson,et al.  Object oriented concurrency and distribution in dragoon , 1991 .

[22]  Naftaly H. Minsky,et al.  Law-Governed Linda as a Coordination Model , 1994, ECOOP Workshop.

[23]  Robin Milner,et al.  Elements of interaction: Turing award lecture , 1993, CACM.

[24]  Ewing Lusk,et al.  User''s Guide to the p4 Parallel Programming System , 1992 .

[25]  Ian M. Holland,et al.  Specifying Reusable Components Using Contracts , 1992, ECOOP.

[26]  Farhad Arbab,et al.  Restructuring sequential Fortran code into a parallel/distributed application , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[27]  Edwin D. de Jong,et al.  Towards a Compositional Method for Coordinating Gamma Programs , 1996, COORDINATION.

[28]  Daniel Le Métayer,et al.  Programming by multiset transformation , 1993, CACM.

[29]  Oscar Nierstrasz,et al.  Object-Based Models and Languages for Concurrent Systems , 1994, Lecture Notes in Computer Science.

[30]  Tommaso Bolognesi,et al.  Tableau methods to describe strong bisimilarity on LOTOS processes involving pure interleaving and enabling , 1994, FORTE.

[31]  Nicholas Carriero,et al.  Bauhaus Linda , 1994, ECOOP Workshop.

[32]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .