Functor, Applicative, Monad, Foldable, Traversable instances for (, , ) a b

Jon Fairbairn jon.fairbairn at
Fri Mar 31 09:09:10 UTC 2017

Henning Thielemann <lemming at> writes:

> On Thu, 23 Mar 2017, Fumiaki Kinoshita wrote:
>> It's surprising that they are missing (forgive me, I'm not here to make people grumpy).
> I am not surprised because it was discussed at length a year
> before. I still think all these instances on pairs, triples
> and other tuples are more dangerous than helpful. It is so
> easy and much more expressive to define custom data types
> for your particular application. Actually, I am still
> actively using only GHC up to GHC-7.8.4, because starting
> with GHC-7.10.3 the slogan "if it can be compiled, it is
> certainly correct" cannot be reasonably claimed anymore
> (length(a,b)==1, maximum(2,1)==1 etc. are just not sane).

I wholeheartedly agree. -1 from me on all such proposals.

I’m greatly dismayed at the rate at which arguments for
convenience are winning over arguments for correctness.
Jón Fairbairn                                 Jon.Fairbairn at

More information about the Libraries mailing list