[Haskell-cafe] Foldable for (,)

MarLinn monkleyon at gmail.com
Thu May 4 20:32:12 UTC 2017

> This to me is the center of the conversation: we're choosing whether we need the instances badly enough that we tolerate some, ahem, bad behavior.

I dispute that. To me, the center of the disagreement is between two 
different kinds of consistency: On the one hand, there's the consistency 
with a view of the world that treats One as a special number different 
from all other numbers. This view is based on the real world where 
singularities seem rampant. On the other side is consistency with a 
math-y view of the world that wants to unify as much as possible so we 
can reduce the number of models, thus, work.

But if you want to treat the cardinality of one specially, do you want 
to drop Const and Identity, too? Const is closer to tuples than lists 
are, so why not cut them out as well? But then we had examples in just 
this conversation where Const and Identity where really useful. What 
argument is left to remove instances for tuples? If you can get over the 
5-second weirdness of Const, why not tuples?

At the end I claim there is no bad behavior. I do give you that there is 
/missing/ behavior because the choice to have only that one instance per 
tuple size is a bit arbitrary and misleading. And that is hard to change 
for now. But do you really want to remove those few instances we do have 
just because we're not ready to include the others yet?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20170504/eb297dbf/attachment.html>

More information about the Haskell-Cafe mailing list