Skip Navigation

The Computer Journal 1990 33(6):501-507; doi:10.1093/comjnl/33.6.501
© 1990 by British Computer Society
This Article
Right arrow Full Text (PDF)
Right arrow Alert me when this article is cited
Right arrow Alert me if a correction is posted
Services
Right arrow Email this article to a friend
Right arrow Similar articles in this journal
Right arrow Similar articles in ISI Web of Science
Right arrow Alert me to new issues of the journal
Right arrow Add to My Personal Archive
Right arrow Download to citation manager
Right arrow Search for citing articles in:
ISI Web of Science (2)
Right arrowRequest Permissions
Google Scholar
Right arrow Articles by Foster, I.
Right arrow Articles by Taylor, S.
Right arrow Search for Related Content
Social Bookmarking
 Add to CiteULike   Add to Connotea   Add to Del.icio.us  
What's this?

Concurrency: Simple Concepts and Powerful Tools

I. Foster1 *, C. Kesselman2 § and S. Taylor3 ¶

1 Mathematics and Computer Science Division, Argonne National Laboratory, 9700 South Cass Avenue, Argonne, Illinois 60439, USA, 2 The Aerospace Corporation, 3 California Institute of Technology, USA

Stepwise refinement is a central program development methodology that has been applied extensively to the design of sequential and parallel programs. In this methodology, a problem is successively decomposed into subproblems in order to untangle seemingly interdependent aspects of the design. To apply the methodology to parallel programs, one must be able to separate and reason about issues such as partitioning and mapping.

This paper describes programming language concepts that we have found useful in applying stepwise refinement to parallel programs. The concepts allow decisions concerning program structure to be delayed until late in the design process. This capability permits rapid experimentation with alternative structures and leads to both portable and scalable code. Although simple, the concepts form a sufficient basis for the construction of powerful programming tools. Both concepts and tools have been applied successfully in a wide variety of applications and are incorporated in a commercial concurrent programming system, Strand*.


Received July 1990.

* Mathematics and Computer Science Division, Argonne National Laboratory, 9700 South Cass Avenue, Argonne, Illinois 60439, USA

§ The Aerospace Corporation

California Institute of Technology


Add to CiteULike CiteULike   Add to Connotea Connotea   Add to Del.icio.us Del.icio.us    What's this?




Disclaimer:
Please note that abstracts for content published before 1996 were created through digital scanning and may therefore not exactly replicate the text of the original print issues. All efforts have been made to ensure accuracy, but the Publisher will not be held responsible for any remaining inaccuracies. If you require any further clarification, please contact our Customer Services Department.