Jan-Willem Maessen's dissertation, Hybrid Eager and Lazy Evaluation for Efficient Compilation of Haskellthesis has recently been released, and the author says an implementation is on the way:
I'm presently working hard on making a production-quality version of
the Eager Haskell compiler. If you have any questions about Eager
Haskell, or would like to see a pre-release version of the compiler
along with the programs I used as benchmarks, drop me a line. A full
release of the unified pH / EH compiler is slated for mid-August.
Here's the first paragraph of the abstract:
The advantage of a non-strict, purely functional language such as
Haskell lies in its clean equational semantics. However, lazy
implementations of Haskell fall short: they cannot express tail
recursion gracefully without annotation. We describe resource-bounded
hybrid evaluation, a mixture of strict and lazy evaluation, and its
realization in Eager Haskell. From the programmer's perspective, Eager
Haskell is simply another implementation of Haskell with the same
clean equational semantics. Iteration can be expressed using tail
recursion, without the need to resort to program annotations. Under
hybrid evaluation, computations are ordinarily executed in program
order just as in a strict functional language. When particular stack,
heap, or time bounds are exceeded, suspensions are generated for all
outstanding computations. These suspensions are re-started in a
demand-driven fashion from the root.
Posted to functional by Bryn Keller on 6/4/02; 4:09:29 PM
|
|