[Haskell-beginners] homogeneous value list

Ozgur Akgun ozgurakgun at gmail.com
Fri Mar 12 09:33:49 EST 2010


On 12 March 2010 14:28, Thomas Davie <tom.davie at gmail.com> wrote:

>
> On 12 Mar 2010, at 14:25, Salil Wadnerkar wrote:
>
> On Fri, Mar 12, 2010 at 10:21 PM, Ozgur Akgun <ozgurakgun at gmail.com>
> wrote:
>
> Another boring variant from me then.
>
>
> isHomogeneous xs = all (first==) xs
>
>     where first = head xs
>
>
>
> Shouldn't
> head xs
> give an exception on an empty list?
>
>
> An error, and only if it's evaluated.  Lazy evaluation means it's not
> evaluated here.
>
> Of course another non-strict algorithm *might* evaluate head xs here, so
> this version won't work in all possible Haskell implementations, only the
> current ones which use lazy evaluation.
>
> Bob
>


So we need to make sure our code would work in a strict environment, even
though we are using a lazily evaluated language, just in case if someone
comes up with a not-that-lazy implementation of haskell?

If I was thinking this way, I would just stop using haskell at all.


-- 
Ozgur Akgun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/beginners/attachments/20100312/08efb5a7/attachment.html


More information about the Beginners mailing list