[Haskell-cafe] Strict and non-strict vs eager and lazy, was Confused about Cyclic struture

Simon Marlow simonmar at microsoft.com
Wed Jul 20 05:25:33 EDT 2005


On 18 July 2005 15:19, Bayley, Alistair wrote:

> Not a taker (yet - where can I find information about non-lazy
> implementation of non-strict languages? From Google so far:
> speculative evaluation (Eager Haskell), call-by-name vs call-by-need.)
> 
> Wikipedia frustratingly hints that "other evaluation strategies are
> possible", but that's all it says:
> http://en.wikipedia.org/wiki/Non-strict_programming_language

While most of Haskell admits other evaluation strategies, lazy I/O
pretty much requires lazy evaluation for lazy input streams.  If the
list returned by getContents is evaluated mulitple times, you don't want
to read more data from the input each time, hence previous evaluations
must be shared.

Cheers,
	Simon "down with lazy I/O" Marlow


More information about the Haskell-Cafe mailing list