[Haskell-cafe] Re: ANNOUNCE: Utrecht Haskell Compiler (UHC) --first release

Sittampalam, Ganesh ganesh.sittampalam at credit-suisse.com
Mon Apr 20 06:20:17 EDT 2009

Miguel Mitrofanov wrote:
> Jon Fairbairn wrote on 20.04.2009 13:59:
>> Achim Schneider <barsoap at web.de> writes:
>>> Jon Fairbairn <jon.fairbairn at cl.cam.ac.uk> wrote:
>>>> atze at cs.uu.nl writes:
>>>>> 	    Utrecht Haskell Compiler -- first release, version 1.0.0
>>>>> 	    ========================================================
>>>>> The UHC team is happy to announce the first public release of the
>>>>> Utrecht Haskell Compiler (UHC). UHC supports almost all Haskell98
>>>>> features
>>>> Why? Is there something about Haskell 98 that's hard to implement?
>>> Insanity. I doubt anyone is going to miss n+k patterns:
>> That (taken with the followup from Richard O'Keefe saying he does use
>> them) underlines my point, really. What follows is specific to
>> Haskell, but the general point applies to most languages I've
>> encountered. 
>> I have no love for n+k patterns, but they are part of
>> Haskell98 -- and were the subject of protracted arguments for and
>> against them before the Report was finished (I was against them, if I
>> remember correctly). Any implementation claiming to be of Haskell98
>> should have them, whether or not the implementor likes them, because
>> otherwise someone will come along with a valid Haskell98 programme
>> and it won't compile, so they'll have to hack it around. This sort of
>> thing (and resulting #ifdef all over the place) wastes far more
>> programmer time in the end (assuming the compiler becomes popular)
>> than it would take to implement the feature.
>> It's not an implementor's place to make such decisions -- they can
>> legitimately say "this feature sucks" and tell the next Haskell
>> committee so. If they care enough about it, they can lobby or get on
>> that next committee, but the arguments for n+k patterns /in
>> Haskell98/ were done long ago. 
> I disagree. First of all, UHC states explicitly that some features
> are not supported (and probably never would be). Secondly, it seems
> like almost nobody uses (n+k)-patterns, and when they are used, they
> make the code less readable; so it's good NOT to support them, in
> order to make programmers avoid them as much as possible. I don't
> think #ifdef's would be really "all over the place"; it's more likely
> that a minor refactoring would take place so that (n+k)-patterns
> would disappear.       

In addition, (n+k) patterns will be removed from the standard as soon as
the Haskell prime process produces a new one, so people who want to make
their code support that new standard should be removing them right now.


 Please access the attached hyperlink for an important electronic communications disclaimer: 

More information about the Haskell-Cafe mailing list