[Haskell-cafe] strict, lazy, non-strict, eager

Tom Murphy amindfv at gmail.com
Sun Dec 25 03:01:58 CET 2011


"I have not written this complaint until now because I have been waiting
for unmistakable evidence, a smoking gun, a red hand so caught that you
cannot explain away,"
     It's not a murder trial! The number-one nice thing about the Haskell
community is that they _thoroughly_ listen to people. I think you'd get a
similarly informative discussion, sending just the second half of this
email.

That said, 2 points:


On Sat, Dec 24, 2011 at 1:49 PM, Dan Doel <dan.doel at gmail.com> wrote:

> [...]
> I think it's good to be clear on all these specifics, and people could
> do with a better recognition of the difference between (non-)strict
> and (lazy)eager (hint: you can have an eager, non-strict language). [...]
>

     +1.
     I'm pretty sure _none_ of the Haskell texts have a definitive
comparison of strict, non-strict, lazy, and eager.
     The Haskell Wiki has this (and only this) to say about Eager
Evaluation:
"Eager evaluation is an implementation of the strict semantics as can be
found in OCaml and usually in imperative languages. A kind of opposite is
lazy evaluation." [0]
     We can do better.


     On the other hand:
     I'd _strongly_ argue against "making up our minds" about definitions
within the Haskell community. Most of these concepts aren't
Haskell-specific.
     An example of something to avoid is our definitions of "concurrency"
and "parallellism." We as a community have specific, good definitions of
each term. [1] So does the Erlang community. [2] Yet the definitions don't
have anything to do with each other, which makes talking across communities
more difficult.


amindfv / Tom


[0] http://www.haskell.org/haskellwiki/Eager_evaluation

[1]
http://learnyousomeerlang.com/the-hitchhikers-guide-to-concurrency#dont-panic,
paragraph 4

[2]
http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html,
"Defining concurrency and parallelism"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20111224/929630c5/attachment.htm>


More information about the Haskell-Cafe mailing list