Coordination Abstractions line separator

High-Level Coordination Abstractions

We have developed an approach to constructing coordination abstractions that allows developers to encode patterns of inter-connection and communications between the components of a concurrent computation in an application-independent way. These abstractions can then be used in building concurrent applications. We've been able to build a number of different abstractions using the facilities available in mainstream programming languages like C++, Ada, Java, and Modula-3. We are continuing to develop, implement and apply coordination abstractions. In particular, we are looking at a class of particle interaction simulation problems that are used in a variety of scientific and engineering applications. These problems have a common underlying pattern of coordination that we are encoding as a coordination abstraction. Using this and other abstractions we will study the potential benefits of coordination abstractions in terms of savings in software development cost, potential for reuse, and ability to provide high-performance. The hope is that just as data, procedural and control abstractions have significantly improved the state of the practice with respect to sequential programming, so too can coordination abstractions improve the state of concurrent programming.

This work is funded by NSF under CDA-9617370 and CCR-9703094.

line separator

Papers

We've written a few papers about coordination abstractions.

line separator

Talks

We've given a few talks about coordination abstractions to different audiences.

line separator

Code

When its fit for consumption we'll put it here

line separator

Matt Dwyer (dwyer@cis.ksu.edu) Last updated 24 May 1996.