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

Jon Fairbairn jon.fairbairn at cl.cam.ac.uk
Thu Apr 23 06:14:49 EDT 2009

"Sittampalam, Ganesh" <ganesh.sittampalam at credit-suisse.com> writes:

> Jon Fairbairn wrote:
>> But we can remove them in future language versions. The point I was
>> trying to make at the beginning of this subthread was that
>> implementations should follow the definition, because having a core
>> language (Haskell 98) that can be relied on is simpler and wastes
>> less time than the alternative.    
> There has to be a bit of give and take here between standards and
> implementations.

There is no such compulsion. There's an excellent case for
information from implementors and programmers to feed
experience into future standards, but that's not a reason
for implementing something part way.

> The Haskell 98 standard is now very old and becoming
> increasingly less relevant, hence the Haskell' effort.
> (n+k) patterns were always controversial and the decision
> to include them has indeed been reversed by the Haskell'
> committee.

But there is no retroactive removal from Haskell 98.

> So I would say that {Haskell 98 - (n+k)} is itself a
> worthwhile standard to implement.

It's not a standard. You have to document the difference
(waste of time), programmers have to notice the difference
(waste of time), books that describe H 98 no longer apply
(waste of effort). You can argue that the wastes here are
individually small, but you have to multiply them by the
number of times they happen (and again, I'm taking n+k as an
example of a general problematic attitude that's been with
us since FORTRAN I*, rather than really arguing about n+k

[*] The FORTRAN IV standard contains some really quite
entertaining examples of what happens when you try to
standardise the intersection of divergent implementations of
a programming language.

Jón Fairbairn                                 Jon.Fairbairn at cl.cam.ac.uk
http://www.chaos.org.uk/~jf/Stuff-I-dont-want.html  (updated 2009-01-31)

More information about the Haskell-Cafe mailing list