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

Remove Applicative#traverse and Applicative#sequence #2039

Closed
LukaJCB opened this issue Nov 24, 2017 · 3 comments · Fixed by #2042
Closed

Remove Applicative#traverse and Applicative#sequence #2039

LukaJCB opened this issue Nov 24, 2017 · 3 comments · Fixed by #2042

Comments

@LukaJCB
Copy link
Member

LukaJCB commented Nov 24, 2017

These don't really serve any purpose and just delegate to the functions on Traverse so let's get rid of them.

@travisbrown
Copy link
Contributor

As a little extra motivation, if you try to call traverse on something like catsStdInstancesForVector with type parameters, the compiler will complain about the middle parameter not having the right kind (because of the collision between Applicative#traverse and Traverse#traverse). You can easily work around this by upcasting the instances, but it's still vaguely annoying.

@kubukoz
Copy link
Member

kubukoz commented Nov 24, 2017

I think I can make this happen ;) always calling dibs on removing some code

@jtjeferreira
Copy link
Contributor

If anyone is missing the Applicative#sequence when use in a composed Applicative like in Applicative[Future].compose[MyValidatedNel].sequence(segments), then an workaround described in
https://gitter.im/typelevel/cats?at=5a564e2f232e79134dedaad5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants