Add missing Monad/Traversable instances to tuples

Artyom Kazak yom at artyom.me
Tue Apr 2 08:39:59 UTC 2019


+0.1 from me.

These instances are awful but at least let's be consistent.


On Tue, Apr 2, 2019, 06:29 Fumiaki Kinoshita <fumiexcel at gmail.com> wrote:

> I submitted https://gitlab.haskell.org/ghc/ghc/merge_requests/644 but it
> might be still controversial. I'd like to get more opinions again.
>
> Here's the list of proposed instances:
>
> Foldable ((,,) a b)
> Foldable ((,,,) a b c)
> Traversable ((,,) a b)
> Traversable ((,,,) a b c)
> Functor ((,,) a b)
> (Monoid a, Monoid b) => Applicative ((,,) a b)
> (Monoid a, Monoid b) => Monad ((,,) a b)
> Functor ((,,,) a b c)
> (Monoid a, Monoid b, Monoid c) => Applicative ((,,,) a b c)
> (Monoid a, Monoid b, Monoid c) => Monad ((,,,) a b c)
>
> The absence of Traversable instances for tuples feels quite inconsistent
> given that there are Bitraversable instances already.
> _______________________________________________
> 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/20190402/bca25804/attachment.html>


More information about the Libraries mailing list