Towards a Theory of Parallel Programming

  • C. A. R. Hoare


The objectives in the construction of a theory of parallel programming as a basis for a high-level programming language feature are:
  1. 1.

    Security from error. In many of the applications of parallel programming the cost of programming error is very high, often inhibiting the use of computers in environments for which they would otherwise be highly suitable. Parallel programs are particularly prone to time-dependent errors, which either cannot be detected by program testing nor by run-time checks. It is therefore very important that a high-level language designed for this purpose should provide complete security against time-dependent errors by means of a compile-time check.

  2. 2.

    Efficiency. The spread of real-time computer applications is severely limited by computing costs; and in particular by the cost of main store. If a feature to assist in parallel programming is to be added to a language used for this purpose, it must not entail any noticeable extra run-time overhead in space or speed, neither on programs which use the feature heavily, nor on programs which do not; efficient implementation should be possible on a variety of hardware designs, both simple and complex; and there should be no need for bulky or slow compilers.

  3. 3.

    Conceptual simplicity.



Critical Region Parallel Programming Parallel Process Eritieal Region Sparse Array 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer Science+Business Media New York 1972

Authors and Affiliations

  • C. A. R. Hoare

There are no affiliations available

Personalised recommendations