[Haskell-cafe] Re: evaluate vs seq

Lennart Augustsson lennart at augustsson.net
Fri Sep 15 08:15:45 EDT 2006


Sorry, it is of course Jan-Willem's compiler that is called Eager  
Haskell, the Ghc version was called optimistic Haskell.

There's also the old precursor to these, the Optimistic G-machine,  
that performs some non-lazy computations.  (And it can even do them  
while garbage collecting!)

	-- Lennart

On Sep 15, 2006, at 07:59 , Lennart Augustsson wrote:

> No, I wasn't suggesting that evaluate can tell the difference, just  
> that you can add dubious "functions".
>
> You can evaluate with eager evaluation and some kind of threads 
> +fair scheduler.  Both pH and the (short lived) Eager Haskell  
> version of ghc did this.  (Well, I'm not sure pH ever got the fair  
> scheduler.)
>
> 	-- Lennart
>
> On Sep 15, 2006, at 05:00 , apfelmus at quantentunnel.de wrote:
>
>> Lennart Augustsson wrote:
>>> No, you were right the first time. :)  The denotational semantics  
>>> is the
>>> important one.  Haskell can be executed by other means than graph
>>> reduction.  (That's why the report says a "non-strict" rather than
>>> "lazy" language.)  Peculiar language constructs may allow you to  
>>> tell
>>> the difference, but then they are highly dubious (and like all  
>>> dubious
>>> things, they should be in the IO monad :) ).
>>
>> You suggest that (evaluate) or something else actually can tell me  
>> the
>> difference? That would be interesting.
>>
>> And what alternatives (besides call by name without sharing) are  
>> there?
>> I always think lazy evaluation is space and time optimal.
>>
>> Regards,
>> apfelmus
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
> _______________________________________________
> 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