
20 Jul
2005
20 Jul
'05
5:25 a.m.
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