**Eden** has been jointly developed by two groups at Philipps
Universitat Marburg, Germany and Universidad Complutense de Madrid,
Spain. The project has been ongoing since 1996. Currently, the team
consists of the following people: Rita Loogen, Jost Berthold, Mischa
Dieterle, Thomas Horstmeyer, Oleg Lobachev, Johannes
May. See here for
knowing the current developments.

Eden extends Haskell with a small set of syntactic constructs for explicit process specification and creation. While process launching is explicit, process communication and synchronisation are implicit. The computational language is Haskell, so it is lazy, while the coordination constructs introduce eagerness in process launching and communications. The result is both an enough abstract language for parallel programming, and an enough efficient language for exploiting multi-computer grids.

Eden's main constructs are process abstractions and process instantiations. The function process :: (a -> b) -> Process a b embeds a function of type (a -> b) into a process abstraction of type Process a b which, when instantiated, will be executed in parallel. Process instantiation is expressed by the predefined infix operator ( # ) :: Process a b -> a -> b. Higher-level coordination is achieved by defining skeletons, ranging from a simple parallel map to sophisticated replicated-worker schemes. They have been used to parallelise a set of non-trivial benchmark programs.

- R. Peña, C. Segura

"Reasoning About Skeletons in Eden"

Parallel Computing: Current and Future Issues of High End Computing, ParCo'05, Malaga, April 2005. John von Newmann Institute for Computing 2006, NIC Series, Vol. 33, pages 851-858

.pdf - R. Loogen, Y. Ortega-Mallén, R. Peña

"Parallel-Functional Programming in Eden"

Journal of Functional Programming, Cambridge University Press, Vol. 15, no. 3, May 2005, pages 431-475

.pdf - R. Peña, C. Segura

"Non-determinism Analyses in a Parallel-Functional Language"

Journal of Functional Programming, Cambridge University Press, Vol. 15, no. 1, Jan. 2005, pages 67-100

.pdf - R. Martínez, R. Peña

"Building an Interface Between Eden and Maple: A way of Parallelizing Computer Algebra Algorithms"

Selected papers of*Implementation of Functional Languages, IFL'03*, Edinburgh (UK), Sept. 2003, Lecture Notes in Computer Science no. 3145, Springer 2004, pages 135-151

.pdf - C. Segura, R. Peña

"Correctness of Non-Determininsm Analyses in a Parallel Functional Language"

Selected papers of*Implementation of Functional Languages, IFL'03*, Edinburgh (UK), Sept. 2003, Lecture Notes in Computer Science no. 3145, Springer 2004, pages 69-85

.pdf - H,-W. Loidl, F. Rubio, N. Scaife, K. Hammond,
S. Horiguchi, U. Klusik, R. Loogen, G. J. Michaelson ,
R. Peña, A. J. Reb&ocaute;n Portillo, S. Priebe,
P. Trinder

"Comparing Parallel Functional Languages: Programming and Performance"

Higher-Order and Symbolic Computation, Vol. 16 No. 3, Kluwer Academic Publishers 2003, pages 203-251

.pdf - R. Loogen, Y. Ortega, R. Peña, S. Priebe, F. Rubio

"Parallelism Abstractions in Eden"

In*Patterns and Skeletons for Parallel and Distributed Computing*, F. A. Rabhi and S. Gorlatch (eds.), Springer-Verlag 2002, pages 95-128

.pdf - R. Peña, C. Segura

"A Polynomial-Cost Non-determinism Analysis"

Selected papers of*Implementation of Functional Languages, IFL'01*, Stockholm (Sweden), Sept. 2001, Lecture Notes in Computer Science no. 2312, Springer-Verlag 2002, pages 121-137

.pdf - R. Peña, C. Segura

"Sized Types for Typing Eden Skeletons"

Selected papers of*Implementation of Functional Languages, IFL'01*, Stockholm (Sweden), Sept. 2001, Lecture Notes in Computer Science no. 2312, Springer-Verlag 2002, pages 1-17

.pdf

Last modified: May 27, 2009