|  I've fixed some of the warnings in transformers, but there are still
|  14 of them, triggered by Applicative becoming a superclass of Monad.

In GHC's own source code I did this

#if __GLASGOW_HASKELL__ < 710
-- Pre-AMP change
runGhcT :: (ExceptionMonad m, Functor m) =>
#else
runGhcT :: (ExceptionMonad m) =>
#endif

|  I think some of the changes already made are of this sort, exposing
|  details of the GHC implementation, e.g. the changes to the public
|  interface of Array and Ratio.  For example, it's probably reasonable
|  to remove the Ix constraint from Data.Array.bounds, but the portable
|  reference implementation of Data.Array.elems requires Ix, even though
|  the GHC implementation doesn't.  Similarly a portable implementation
|  of the Functor instance for Array i requires Ix, but the GHC
|  implementation doesn't.

Fair enough. If the Core Libraries Committee wants to add some of these 
constraints back in, that's fine with me.  They just need a comment to explain. 
 (We have a trick, now in the user manual, for how to add a redundant 
constraint without triggering a complaint.)

Simon
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to