Parallel functional programming in Eden

Eden extends the non-strict functional language Haskell with constructs to control parallel evaluation of processes. Although processes are defined explicitly, communication and synchronisation issues are handled in a way transparent to the programmer. In order to offer effective support for paralle...

Full description

Saved in:
Bibliographic Details
Published in:Journal of functional programming Vol. 15; no. 3; pp. 431 - 475
Main Authors: LOOGEN, RITA, ORTEGA-MALLÉN, YOLANDA, PEÑA-MARÍ, RICARDO
Format: Journal Article
Language:English
Published: Cambridge, UK Cambridge University Press 01.05.2005
ISSN:0956-7968, 1469-7653
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Eden extends the non-strict functional language Haskell with constructs to control parallel evaluation of processes. Although processes are defined explicitly, communication and synchronisation issues are handled in a way transparent to the programmer. In order to offer effective support for parallel evaluation, Eden's coordination constructs override the inherently sequential demand-driven (lazy) evaluation strategy of its computation language Haskell. Eden is a general-purpose parallel functional language suitable for developing sophisticated skeletons – which simplify parallel programming immensely – as well as for exploiting more irregular parallelism that cannot easily be captured by a predefined skeleton. The paper gives a comprehensive description of Eden, its semantics, its skeleton-based programming methodology – which is applied in three case studies – its implementation and performance. Furthermore it points at many additional results that have been achieved in the context of the Eden project.
Bibliography:PII:S0956796805005526
istex:CB58E310BAF7823206AC0EAEF44202A01FDE63C6
ark:/67375/6GQ-70346LW0-C
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
ISSN:0956-7968
1469-7653
DOI:10.1017/S0956796805005526