<div>&quot;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,&quot;</div><div>     It&#39;s not a murder trial! The number-one nice thing about the Haskell community is that they _thoroughly_ listen to people. I think you&#39;d get a similarly informative discussion, sending just the second half of this email.</div>
<div><br></div><div>That said, 2 points:</div><div><br></div><br><div class="gmail_quote">On Sat, Dec 24, 2011 at 1:49 PM, Dan Doel <span dir="ltr">&lt;<a href="mailto:dan.doel@gmail.com" target="_blank">dan.doel@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

[...]<br>
I think it&#39;s good to be clear on all these specifics, and people could<br>
do with a better recognition of the difference between (non-)strict<br>
and (lazy)eager (hint: you can have an eager, non-strict language). [...]<br></blockquote><div><br></div><div>     +1. </div><div>     I&#39;m pretty sure _none_ of the Haskell texts have a definitive comparison of strict, non-strict, lazy, and eager.</div>
<div>     The Haskell Wiki has this (and only this) to say about Eager Evaluation:</div><div>&quot;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.&quot; [0]</div>
<div>     We can do better.</div><div><br></div><div><br></div><div>     On the other hand:</div><div>     I&#39;d _strongly_ argue against &quot;making up our minds&quot; about definitions within the Haskell community. Most of these concepts aren&#39;t Haskell-specific. </div>
<div>     An example of something to avoid is our definitions of &quot;concurrency&quot; and &quot;parallellism.&quot; We as a community have specific, good definitions of each term. [1] So does the Erlang community. [2] Yet the definitions don&#39;t have anything to do with each other, which makes talking across communities more difficult.</div>
<div><br></div><div><br></div><div>amindfv / Tom</div><div><br></div><div><br></div><div>[0] <a href="http://www.haskell.org/haskellwiki/Eager_evaluation">http://www.haskell.org/haskellwiki/Eager_evaluation</a></div><div>
<br></div><div>[1] <a href="http://learnyousomeerlang.com/the-hitchhikers-guide-to-concurrency#dont-panic">http://learnyousomeerlang.com/the-hitchhikers-guide-to-concurrency#dont-panic</a>, paragraph 4</div><div><br></div>
<div>[2] <a href="http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html">http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html</a>, &quot;Defining concurrency and parallelism&quot; </div>
</div>