Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PSA: Be more careful about type classes included in cats(-core) #1364

Closed
adelbertc opened this issue Sep 8, 2016 · 3 comments
Closed

PSA: Be more careful about type classes included in cats(-core) #1364

adelbertc opened this issue Sep 8, 2016 · 3 comments

Comments

@adelbertc
Copy link
Contributor

adelbertc commented Sep 8, 2016

Filing this as an issue just to have a central place to talk about this. It seems Cats is getting larger and larger with a lot of perhaps niche type classes. One of the goals of Cats was to be more modular/not grow into this gigantic project with everything included.

Examples that come to mind:

I'm not saying we shouldn't include these, or that the current set of type classes we already have are blessed - I just want to bring up the fact I think we should really think about if a type class is necessary/useful/general enough to be in a library like cats-core before including it.

cc-ing some folks who look to be active on those tickets @non @ceedubs @johnynek

@eed3si9n
Copy link
Contributor

eed3si9n commented Sep 8, 2016

+1 on keeping things lean esp if Cats 1.0 is going to have multi-year bincompat story.

@johnynek
Copy link
Contributor

johnynek commented Sep 8, 2016

I think this is a good thing to consider for sure. I don't think we want to add every type-class imaginable.

For what it's worth, I submitted mine only because it is very common in work I do (more so, than the less general): https://github.com/typelevel/cats/pull/1225/files (that said, I'm starting to wonder if it is not just a method on Alternative).

@ceedubs
Copy link
Contributor

ceedubs commented Sep 30, 2018

I'm going to go ahead and close this out. Cats is past the 1.0 release and has been pretty stable. There are good points brought up here, but this issue is titled in such a way that will forever resist being closed out, so I'm going to go ahead and do so now :P

@ceedubs ceedubs closed this as completed Sep 30, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants