An elementary language construct for parallel programming

  • Authors:
  • Tom Axford

  • Affiliations:
  • School of Computer Science, University of Birmingham, Birmingham B15 2TT, U.K.

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 1990

Quantified Score

Hi-index 0.00

Visualization

Abstract

Current programmig practice, whether in procedural, functional or other types of languages, is strongly orientated to producing programs which are essentially sequential in nature. Procedural programmers make frequent use of loop structures (e.g. FOR and WHILE statements), while functional programmers use raw recursion instead. Neither of these mechanisms can be easily compiled into parallel code. It is suggested that there may be considerable advantages in avoiding the use of loop structures in procedural languages and raw recursion in any type of language. Instead, programs could be written using a general divide-and-conquer construct which is typically just as easy to use, but allows easy parallel implementation. A number of simple examples are given to show how this could be done and to provide evidence that the idea is not quite as outrageous as it may seem at first sight.