Folks,

I want to thank everyone who's contributed to the Haskell 98
discussion; it's been very helpful to me.  However, to save
the bandwidth of those who are less interested, pls consider
replying direct to me, and other contributors on a particular
topic, where the focus is narrow.  (I'd start a new list if we
weren't so nearly done.)

This message summarises where we are.  The web page
        http://research.microsoft.com/Haskell/haskell98-final.html
is up to date.

* MonadZero is done -- see previous message

* Simple context restriction.  After consulting the entrails of
  chickens, and listening to the feedback on the list,
  I've concluded that the least evil position is to
  adopt the Hughes proposal, and allow contexts of the form

                C (m t)

  where m is a type variable and t is any type.  No new arguments
  have been put forward recently; it's just a judgement call.  I know
  that not everyone will be happy with this one, but I don't think
  it's a life-or-death issue for anyone.

* I have been levered by slow degrees into doing more to the Prelude
  than I had intended.   I have
        - made explicit, for each class, which methods must be defined
                to completely define the class (in a comment)
        - added default declarations for (/) and negate
        - added show to class Show

  However a couple of other similar proposals have been made
        - add succ and pred to class Enum
        - add atan2 to class RealFloat
        - are there any other obvious candidates?

  I must say that it's odd to have min/max in Ord, but not to have
  succ/pred in Enum.  It makes the class bigger, but sometimes more
  efficient.  And succ/pred are arguably the most basic functions in
  Enum.

  I have not opinion about atan2 [Kent Karlsson's message elaborates].

  I am thoroughly reluctant to fiddle with the Prelude (where does one
stop?).
  But not *absolutely* oposed.

  Opinions to me (preferably not ccing the list unless there are wider
issues
  at stake).

* Default default.  Still undecided (sigh).  Should it be
        (Int,     Float)
        (Integer, Double)
        (Integer, Rational)
  Several folk want Integer, but don't say whether they want Float,Double,
  Rational.

Simon


Reply via email to