Move Data.Functor.Contravariant into base

Edward Kmett ekmett at gmail.com
Tue Dec 13 21:45:28 UTC 2016


Just to articulate a few more points on each side:

To Andreas point, one issue with contravariant in base is that there are no
types in base that would serve as reasonable instances. You'd get a
scattershot pile of mostly 'nonsensical' instances for stuff like the
GHC.Generics types.

On the other hand, but a far lesser concern, it'd shed the dependencies the
package has, which would be good for things like lens-style Getters which
use the constraint. Being able to use or supply more types of lenses with
no dependencies is a minor good point.

On the other other hand, rehoming a lot of the 'nonsensical' style
instances to the packages that have their dependencies inverted is a fair
chunk of work.

On the other other other hand, this would fix the weird dependency
inversion between StateVar and contravariant forced by the haskell platform.

Er... that is a lot of hands. I personally don't care much one way or the
other. Doing nothing is literally the default option. If there winds a lot
of noise against this I'm happy to stick with the status quo, which is not
THAT broken. On the other other other other hand, if there is a huge upwell
of support, we could make a go of it.

-Edward

Note to self: I need to stop counting hands in unary.

On Tue, Dec 13, 2016 at 3:34 PM, Andreas Abel <abela at chalmers.se> wrote:

> -1.  I think to move something into base there should be some hard
> evidence for its popularity.  Such could be provided by a reverse
> dependency search on hackage.
>
> --Andreas
>
>
> On 11.12.2016 17:14, Andrew Martin wrote:
>
>> The typeclass Contravariant (from the contravariant package) is both
>> useful and fundamental. I would like to see this moved into base.
>> One additional motivating factor is that it would become possible
>> for a DeriveContravariant extension to be written in a future GHC
>> release.  I'd love to hear other people's thoughts, even if it's as
>> simple as a yea or nay. Thanks.
>>
>> -Andrew Martin
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>>
>
> --
> Andreas Abel  <><      Du bist der geliebte Mensch.
>
> Department of Computer Science and Engineering
> Chalmers and Gothenburg University, Sweden
>
> andreas.abel at gu.se
> http://www2.tcs.ifi.lmu.de/~abel/
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20161213/ab06cde1/attachment.html>


More information about the Libraries mailing list