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

Xiao-Yong Jin xj2106 at columbia.edu
Mon Apr 20 22:12:43 EDT 2009

"Brandon S. Allbery KF8NH" <allbery at ece.cmu.edu> writes:

> On Apr 20, 2009, at 10:46 , David Leimbach wrote:
>     Just refuse to use UHC until it conforms.  One can refuse to use GHC
>     libraries that use extensions as well for similar reasons.  I always think
>     twice when I see something that isn't Haskell 98 in my stack.
> So you don't use hierarchical libraries?
> For that matter, *GHC* isn't fully Haskell98:  http://www.haskell.org/ghc/docs
> /latest/html/users_guide/bugs-and-infelicities.html#haskell98-divergence

It's about compatibility.  An implementation can diverge
from the standard, but it should be able to parse the
standard code correctly.  It is totally okay to add
something to the standard, but not remove something from the
standard.  Because by adding something, you wouldn't break
the standard compliant code.  But removing anything from
standard would prevent any standard code from working
correctly.  The only thing that would make a standard code
break in ghc is

> let x = 42 in x == 42 == True

But I believe it is a much smaller issue compared to what
UHC has.

I believe the standard should be maintained as the intersect
of all the valid implementations.  If any implementation
does not implement all of the standard, according to what
should our coders write?
    c/*    __o/*
    <\     * (__
    */\      <

More information about the Haskell-Cafe mailing list