Concurrent clean

  • E. G. J. M. H. Nöcker
  • J. E. W. Smetsers
  • M. C. J. D. van Eekelen
  • M. J. Plasmeijer
Submitted Presentations

DOI: 10.1007/3-540-54152-7_66

Part of the Lecture Notes in Computer Science book series (LNCS, volume 506)
Cite this paper as:
Nöcker E.G.J.M.H., Smetsers J.E.W., van Eekelen M.C.J.D., Plasmeijer M.J. (1991) Concurrent clean. In: Aarts E.H.L., van Leeuwen J., Rem M. (eds) PARLE '91 Parallel Architectures and Languages Europe. PARLE 1991. Lecture Notes in Computer Science, vol 506. Springer, Berlin, Heidelberg

Abstract

Concurrent Clean is an experimental, lazy, higher-order parallel functional programming language based on term graph rewriting. An important difference with other languages is that in Clean graphs are manipulated and not terms. This can be used by the programmer to control communication and sharing of computation. Cyclic structures can be defined. Concurrent Clean furthermore allows to control the (parallel) order of evaluation to make efficient evaluation possible. With help of sequential annotations the default lazy evaluation can be locally changed into eager evaluation. The language enables the definition of partially strict data structures which make a whole new class of algorithms feasible in a functional language. A powerful and fast strictness analyser is incorporated in the system. The quality of the code generated by the Clean compiler has been greatly improved such that it is one of the best code generators for a lazy functional language. Two very powerful parallel annotations enable the programmer to define concurrent functional programs with arbitrary process topologies. Concurrent Clean is set up in such a way that the efficiency achieved for the sequential case can largely be maintained for a parallel implementation on loosely coupled parallel machine architectures.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag 1991

Authors and Affiliations

  • E. G. J. M. H. Nöcker
    • 1
  • J. E. W. Smetsers
    • 1
  • M. C. J. D. van Eekelen
    • 1
  • M. J. Plasmeijer
    • 1
  1. 1.Faculty of Mathematics and Computer ScienceUniversity of NijmegenNijmegenThe Netherlands

Personalised recommendations