Hello,

On Wed, Sep 3, 2008 at 13:50, Simon Peyton-Jones <simonpj@microsoft.com> wrote:
My reading of Claus's message is that, modulo discussion of some details of [partial], he'd go with that plan.

Is that acceptable to others?  If so, someone (Jose) needs to sort out the details.  19 Sept is GHC's release candidate, so we need this done well before then.

Are the details sorted out? Summarizing:
Regarding the instances, two aspects have to be considered:
  1. Avoiding the implicit re-export of Data instances from modules in base;
  2. Deciding which instances go where.

Regarding (1), the following changes need to be done:

./containers/Data/IntMap.hs
./containers/Data/IntSet.hs
./containers/Data/Map.hs
./containers/Data/Sequence.hs
./containers/Data/Set.hs
./containers/Data/Tree.hs
./network/Network/URI.hs
./packedstring/Data/PackedString.hs
./haskell-src/Language/Haskell/Syntax.hs
./template-haskell/Language/Haskell/TH/Quote.hs
./template-haskell/Language/Haskell/TH/Syntax.hs
./bytestring/Data/ByteString/Internal.hs
./bytestring/Data/ByteString/Lazy/Internal.hs

Regarding (2), the separation of the 44 Data instances in Data.Generics.Instances is the following:
[a] (Maybe a) (Either a b) () (,) (,,) (,,,) (,,,,) (,,,,,) (,,,,,,)
Bool Ordering Char Double Float Integer
Int Int8 Int16 Int32 Int64 Word Word8 Word16 Word32 Word64
Ratio Complex
Ptr ForeignPtr
DataType TyCon TypeRep Handle ThreadId StablePtr
(a -> b) (IO a) (ST s a) (STM a) (IORef a) (TVar a) (MVar a)

Any remarks?


Thanks,
Pedro