Closed chshersh closed 6 years ago
ToList
and Container
. I don't like MonoFoldable
because it's taken by a popular package.
@neongreen You're right, I also don't want to be associated with famous package (though I like the name).
I'm really glad that you're going to rename these ones.
But whatever names you will choose eventually, please remain aliases for old ones. I have several personal projects which use universum
, and am highly interested in bumping base library without code migrations
@Martoon-00 Well, if we rename NonTrivialContainer
to Container
then it's difficult to keep Container
alias for old Container
which will be renamed to ToList
...
Yeah, that would be sad. However strengthening constraint here should be ok in most cases
@Martoon-00 What do you mean by saying strengthening constraint?
If previously I had a function
f :: Container list => ...
then after bumping universum with renaming, Container
would become more strong constraint and f
would still compile. At the same time, most types which currently implement Container
do implement NonTrivialContainer
as well, so use cite of f
where I instantiate list
would most probably stay compiling as well
Okay, let it be ToList
and Container
.
Names
Contaner
andNonTrivialContainer
for ourFoldable
-like type classes were invented most-likely without feeling that we will still useuniversum
in 2017... But it's a fact. And I feel like we need to invent better names. We should discuss it. You can propose your replacements. But here are mine:For
Container
ToList
LikeList
Listable
Sequence
IsSequence
(like inmono-traversable
)MonoList
For
NonTrivialContainer
MonoFoldable
(like inmono-traversable
)Sequence
IsSequence
ListContainer
ListSequence
SequenceList
I like
ToList
andMonoFoldable
more. Your suggestions?@neongreen @gromakovsky @int-index @Martoon-00