
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). And it seems that adding damage to the libraries is done at a much faster pace than adding compiler features to make them less dangerous (like user-configurable warnings about dangerous instances).