[Haskell] Optimistic Evaluation?

Simon Peyton-Jones simonpj at microsoft.com
Thu Aug 31 09:12:41 EDT 2006

| I remember once reading a paper by SPJ about Optimistic Evaluation
| is somewhere between lazy and strict.  If I remember correctly, they
| implemented it in GHC.  Now, it seems that current version of GHC
| support optimistic evaluation (not even as an optional feature), so my
| is: what happened to OE?  Was it that it seemed like a good idea on
| but not in reality?  Or was it too costly to maintain?  Or it didn't
| the goods it promised?  I'm just curious.

It was great stuff -- and some lazy programs went a lot faster -- but it
was also jolly complicated when all the details were worked out, and
interacted with a lot of other tricky details of the run-time system.
In the end we decided it was just too complicated to permanently
incorporate in GHC's code base, alas. You can find the paper, along with
Rob's thesis (which gives a lot more detail) here:


(Well, the thesis should appear there shortly; if not, look on Rob's web


More information about the Haskell mailing list