Re: Reform of the Monad, and Disruptive Change
Ian Lynagh <igloo@...
2011-02-04 16:00:46 GMT
On Fri, Feb 04, 2011 at 12:49:09PM +0200, Dark Lord wrote:
> On 04/02/2011 12:08, Malcolm Wallace wrote:
> > I suggested, and several people +1'd, that if we are making disruptive changes to the standard libraries
defined in the
> > Language Report (especially the Prelude), then we should aim to make a thorough job of cleaning up all the
> > redesigning in a single strike. This means not just rearranging the Monad hierarchy, but looking at I/O types,
> > exceptions, the default strictness of foldl, and much much more. I would expect the language committee
to get involved
> > in reviewing the decisions of the base library strike force.
> > Then (for instance) ghc could make a major release with the refreshed libraries, and after a little
experience in the
> > field (and perhaps a few patches), the libraries would then proceed to be blessed as part of the
> > standard.
> I thoroughly agree with this. However, in the event that this does not happen, piecemeal fixes are better
> (Seeing as the inertia in Haskell is such that Haskell 2011 was
> cancelled, and Haskell Platform 2011 contains no new packages, such a
> task force doesn't seem very likely.)
Also note that the H' process is the way it is because "fix everything
at once" in the language turned out to be infeasible. The same may or
may not be true for the libraries.
I don't object to a "fix everything at once" libraries change, but in
the absence of it happening, fixing things individually is also good
(where "individually" would still mean, for example, all Monad class
reshuffling should happen at once, but the strictness of foldl' would be
a separate change).