[Haskell-cafe] Re: Why?

Peter Verswyvelen bugfact at gmail.com
Thu Dec 10 11:00:58 EST 2009


Yes I remember when watching Erik Meijer's videos on Channel9 he said
a similar thing: "laziness in the presence of side effects makes your
head explode"...

I guess the recent Microsoft Rx framework for .NET (that permits
impure push-based functional reactive programming with LINQ) will soon
show if the average software engineer can successfully combine side
effects with laziness... Imperative/OO programming is full of
guidelines to help the programmer avoid side effects: "use local state
as much as possible", "never use mutable globals", "use single point
of definition to avoid double out of sync data", "encapsulate
encapsulate encapsulate", etc

On Thu, Dec 10, 2009 at 4:38 PM, Eugene Kirpichov <ekirpichov at gmail.com> wrote:
> 2009/12/10 John D. Earle <JohnDEarle at cox.net>:
>> My intuition says that laziness and purity are distinct whereas yours says
>> that purity is a necessary condition. This is what needs to be reconciled.
>>
>
> Mixing impurity and laziness makes code whose behavior is too hard to
> understand. So, there is no theoretical reason not to mix them, but
> there is a practical one.
>
>> I believe that everyone is thinking that lazy evaluation and strict
>> evaluation are similar activities whereas they are profoundly different.
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>
>
>
> --
> Eugene Kirpichov
> Web IR developer, market.yandex.ru
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>


More information about the Haskell-Cafe mailing list