Non-H98 crusade, contd.

Sven Panne Sven.Panne at
Sun Feb 27 05:47:21 EST 2005

OK, let's try to summarize what seems to be the current consensus about
more or less conservative & settled extensions to Haskell98:

   a) rank 2 type signatures
   b) polymorphic components for data constructors
   c) pattern guards
   d) data declarations with no constructors
   e) constraints on typeclass methods
   f) instances on type synonyms
   g) relaxation of polymorphic recursion

Probably a) and b) should be considered together(?). Furthermore, currently
only GHC implements c), but a simple desugaring transformation should be
enough to implement it in the other Haskell systems and I don't see any
hard semantic issues here. It would be nice if some volunteers would grab
an extension and write a proposal for a Haskell98 addendum. Implementing
one of these for Hugs/nhc98 might be good task for a student project or a
(very) long weekend. Ross/Malcolm/Simon^2: How much effort (e.g. in man
weeks) would be needed to implement each of these extensions?

My main point here is that it would be very handy if we had independent,
precise and small descriptions of the extensions currently in use. This
makes the chance that they get implemented much higher and would help
avoiding the fragmentation of the language.


P.S.: I still don't have an answer why we really need a non-H98 ReadP in
the base libraries... :-)

More information about the Libraries mailing list