Haskell community has had this argument a dozen times over
There's also #107, which would be impossible to implement if Foldable was moved
Right but that's because modularity is antithetical to cohesive design.
Which in practice means we end up with some ad-hoc selection of useful methods promoted to Traverse
I really don't care if the Haskell community argues about this a lot. toList has no laws attached that aren't guaranteed by parametricity. And Foldable derivation from Traverse is practically very inefficient and not stack-safe or lazy.
ie having alleycats under cats would facilitate this in some, but not all, cases
Regardless I am really not that strongly in favor of moving Foldable. I do think however that a FreeMonoid typeclass would be a useful addition to the Foldable hierarchy, and that would have extra checkable laws.
The same Foldable/Traverse problem arises with Zero/Monoid but it's not really a problem there, just because of implicit derivation.
so re the algebra dependency on alleycats, that (I think) would currently be a blocker on this
and, tbh, is probably currently not quite right anyway
what’s wrong with alleycats depending on algebra?
well the bigger problem is moving into cats repo
as algebra depends on cat-kernel
but even so, this was all done before the cats-core and cats-kernel split
so now, today, an algebra user that wants ,say additiveMonoidIsZero would also have to bring in cats, as well
so, theoretically, we would need alleycats-core, alleycats-kernel, or something
In that respect, outlaws would a more appropriate name - eg cats.outlaws, kernel.outlaws
cats.alley, kernel.alley, doobie.alley
and then algebra.outlaws
well alleycats has a dual meaning in english and , erm, the other two haven't ;)
I know. I was hoping I’d come across something clever, like tinpan.alley, but doobie.alley was as much as I could scrounge up.
anyway, bedtime for me, nn :sleeping:
doobie.outlawed would work :smoking:
@kailuowang just tried to merge a PR on cats and the push was rejected; do I have the appropriate permissions?
Not yet I think, it still says contributor where it should say collaborator.
@djspiewak sorry neither Kai nor I have admin rights to the repo, so we can’t give you rights :(. We are trying to get that remedied.
super quick one typelevel/cats#1695
Hey what ended up happening with Task again? abstracting over it?
Yeah, and cats-effect
I think effects4s is what you want
Ross A. Baker
Note recent discussion of effects4s in cats-effect channel.
@refried ^^^^ tl;dr you probably want cats-effect
1.0.0-MF date is approaching. Can we try one more time give #1682 some love?