On the productivity of recursive list definitions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Algorithmic skeletons: structured management of parallel computation
Algorithmic skeletons: structured management of parallel computation
Proving the correctness of reactive systems using sized types
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Elementary Strong Functional Programming
FPLE '95 Proceedings of the First International Symposium on Functional Programming Languages in Education
Parallel functional programming at two levels of abstraction
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
Using Template Haskell for Abstract Interpretation
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
The parallel-functional language Eden extends Haskell with constructs to explicitly define and communicate processes. These extensions allow the easy definition of skeletons as higher-order functions. However, the programmer can inadvertently introduce busy loops or deadlocks in them. In this paper a sized type system is extended in order to use it for Eden programs, so that those well-typed skeletons are guaranteed either to terminate or to be productive. The problems raised by Eden features and their possible solutions are described in detail and several skeletons are manually type checked in this modified system such as the parallel map, farm, pipeline and replicated workers.