[Haskell-cafe] Re: Newbie question: Where is StackOverflow on the Wiki?

Peter Verswyvelen bf3 at telenet.be
Thu Aug 23 15:26:56 EDT 2007


I think DrScheme does that for Scheme. So a must have for Haskell! Maybe could be added to the Helium project?

>----- Oorspronkelijk bericht -----
>Van: apfelmus [mailto:apfelmus at quantentunnel.de]
>Verzonden: donderdag, augustus 23, 2007 08:00 PM
>Aan: haskell-cafe at haskell.org
>Onderwerp: [Haskell-cafe] Re: Newbie question: Where is StackOverflow on the	Wiki?
>
>Neil Mitchell wrote:
>>>> sum (enum 1 10)                 =>
>>>> sum' 0 (enum 1 10)              =>
>>>> ...
>>>>
>>>> sum' 36 (9 : enum (9+1) 10)      =>
>>>> (sum' $! (36+9)) (enum (9+1) 10) =>
>>>> sum' 45 (enum (9+1) 10)          =>
>>>> sum' 45 []                       =>
>>>> 45
>>>>
>>>> (I need to find some way to automate making these trails :) )
>>> Yes! We'd need such an automatic tool for the wikibook, too.
>> 
>> The problem is that Haskell is ridiculously complex, and the "small
>> step" interpretation is much harder than you'd think. For example, sum
>> may well be defined as foldl' (+) 0, which is a CAF, so gets reduced
>> once. The 0 won't actually be a 0, but will be fromInteger 0, which
>> will correspond to looking up an item in the dictionary and applying
>> it. Dictionaries especially make the "simple" interpretation
>> completely wrong.
>> 
>> It's easy to do informally, but once you start being more precise, its
>> very complex.
>
>Yeah, the precise details may vary, even :) But for teaching, an 
>automatic tool that does graph reduction would be great. I don't mind if 
>it's sloppy (directly apply definitions & pattern matching VS everything 
>is a lambda abstraction) and only does simply typed lambda calculus (no 
>type applications, no type classes).
>
>Regards,
>apfelmus
>
>_______________________________________________
>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