cats
cats copied to clipboard
`Tuple1SemigroupalOps` methods have different names from other `TupleNSemigroupalOps` classes
I don't know whether this is a deliberate design decision, but it seems wrong to me: the TupleNSemigroupalOps
classes offer a consistent family of methods like mapN
and traverseN
, but for Tuple1SemigroupalOps
these get generated as map
and traverse
instead. I'd like to be able to work consistently with tuples of any size, including 1, so I think it would make more sense if Tuple1SemigroupalOps
(and friends) generated the same mapN
/traverseN
/etc. methods that are present on all the other TupleNSemigroupalOps
classes.