PROPOSAL: More base package breakup

Henning Thielemann lemming at henning-thielemann.de
Wed Aug 13 03:15:01 EDT 2008


On Wed, 13 Aug 2008, Duncan Coutts wrote:

> On Wed, 2008-08-06 at 21:37 +0100, Ian Lynagh wrote:
>> Hi all,
>>
>> This is trac #1338:
>>     http://hackage.haskell.org/trac/ghc/ticket/1338#comment:14
>>     http://hackage.haskell.org/trac/ghc/attachment/ticket/1338/packagegraph.png
>>
>> Initial deadline: 21 Aug (2 weeks).
>
> Generally this looks good if a little on the ultra-fine-grained side. If
> we can fold back a few of those tiny single-module packages that'd
> probably be good.
>
> I think we should not move the Applicative class however. It belongs in
> the same package as Functor and Monad (and we should be encouraging
> everything to be an instance of Applicative).

+1

> Similarly, I think the Monoid class should stay in base. I don't care so
> much about the extra Monoid types currently defined in Data.Monoid but
> the class should stay.
>
> I don't think it makes any sense to put Monoid and Applicative in the
> containers package. They're almost completely unrelated.

+1

> One reason is that classes (but not their instances) are common
> interfaces and so belong further down in the package dep graph. People
> tend to try to reduce package dependencies so making people depend on
> containers to give an applicative instance will mean that in many cases
> people simply will not.

+1

> I'll let other people comment on Data.Foldable and .Traversable since I
> don't use them.

For me Foldable and Traversable belong to where Applicative is.



Boring comment, isn't it?


More information about the Libraries mailing list