The major question examined by this paper is whether sufficient fine-grain parallelism can be obtained from programs written in a lazy functional language. To answer this question, we have implemented a prototype compiler based on a novel approach to strictness analysis (called abstract demand propagation) and we have compared this implementation strategy (optimized lazy) with other implementations, viz., pure lazy and lenient. Although the optimized lazy implementation improves significantly the efficiency of the resulting programs over the pure lazy approach, it was found that little parallelism can effectively be identified. This remains true even when a new notion of laziness --- speculative laziness --- is introduced, notion well suit...
This work investigates novel methods for improving the efficiency of evaluating lazy functional prog...
. We show that compiler optimisations based on strictness analysis can be expressed formally in the ...
Abstract- A compile-time analysis technique is developed to derive the probability with which a user...
This thesis investigates the implementation of lazy functional programming languages on parallel mac...
The usual technique for extracting parallelism from lazy functional languages is to use strictness a...
AbstractLaziness restricts the exploitation of parallelism because expressions are evaluated only on...
: is a system for parallel evaluation of lazy functional programs implemented on a Sequent Symmetry....
A substantial amount of work has been devoted to the proof of correctness of various program analyse...
Many parallel algorithms are naturally expressed at a fine level of granularity, often finer than a ...
AbstractIn this paper we present the results of two pieces of work which, when combined, allow us to...
AbstractAbstract interpretation is a compile-time technique which is used to gain information about ...
In functional language implementation, there is a folklore belief that there is a conflict between i...
Many modern parallel languages support dynamic creation of threads or require multithreading in thei...
We present a new parallel implementation of lazy ML. Our scheme is a direct extension of the G-machi...
AbstractExpression evaluation in lazy applicative languages is usually implemented by an expensive m...
This work investigates novel methods for improving the efficiency of evaluating lazy functional prog...
. We show that compiler optimisations based on strictness analysis can be expressed formally in the ...
Abstract- A compile-time analysis technique is developed to derive the probability with which a user...
This thesis investigates the implementation of lazy functional programming languages on parallel mac...
The usual technique for extracting parallelism from lazy functional languages is to use strictness a...
AbstractLaziness restricts the exploitation of parallelism because expressions are evaluated only on...
: is a system for parallel evaluation of lazy functional programs implemented on a Sequent Symmetry....
A substantial amount of work has been devoted to the proof of correctness of various program analyse...
Many parallel algorithms are naturally expressed at a fine level of granularity, often finer than a ...
AbstractIn this paper we present the results of two pieces of work which, when combined, allow us to...
AbstractAbstract interpretation is a compile-time technique which is used to gain information about ...
In functional language implementation, there is a folklore belief that there is a conflict between i...
Many modern parallel languages support dynamic creation of threads or require multithreading in thei...
We present a new parallel implementation of lazy ML. Our scheme is a direct extension of the G-machi...
AbstractExpression evaluation in lazy applicative languages is usually implemented by an expensive m...
This work investigates novel methods for improving the efficiency of evaluating lazy functional prog...
. We show that compiler optimisations based on strictness analysis can be expressed formally in the ...
Abstract- A compile-time analysis technique is developed to derive the probability with which a user...