Hostname: page-component-78c5997874-8bhkd Total loading time: 0 Render date: 2024-11-05T15:40:27.879Z Has data issue: false hasContentIssue false

Parallel and Distributed Haskells

Published online by Cambridge University Press:  08 July 2003

P. W. TRINDER
Affiliation:
Department of Computing and Electrical Engineering, Heriot-Watt University, Edinburgh EH14 4AS, Scotland (e-mail: {Trinder,HWLoidl,RPointon}@cee.hw.ac.uk)
H.-W. LOIDL
Affiliation:
Department of Computing and Electrical Engineering, Heriot-Watt University, Edinburgh EH14 4AS, Scotland (e-mail: {Trinder,HWLoidl,RPointon}@cee.hw.ac.uk)
R. F. POINTON
Affiliation:
Department of Computing and Electrical Engineering, Heriot-Watt University, Edinburgh EH14 4AS, Scotland (e-mail: {Trinder,HWLoidl,RPointon}@cee.hw.ac.uk)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

Parallel and distributed languages specify computations on multiple processors and have a computation language to describe the algorithm, i.e. what to compute, and a coordination language to describe how to organise the computations across the processors. Haskell has been used as the computation language for a wide variety of parallel and distributed languages, and this paper is a comprehensive survey of implemented languages. We outline parallel and distributed language concepts and classify Haskell extensions using them. Similar example programs are used to illustrate and contrast the coordination languages, and the comparison is facilitated by the common computation language. A lazy language is not an obvious choice for parallel or distributed computation, and we address the question of why Haskell is a common functional computation language.

Type
Research Article
Copyright
© 2002 Cambridge University Press
Submit a response

Discussions

No Discussions have been published for this article.