-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Change MonadError from F[_, _] to F[_] #553
Conversation
I was working with MonadError today and the `F[_, _]` approach made me use quite a few type lambdas when I was working with types like Future/Task. Since the error type is already encoded as another type parameter, as far as I know we don't really lose anything by using a type constructor with a single parameter for `F`. It's quite possible that there's a reason for using `F[_, _]`. If anyone knows of one, please speak up.
I don't have a strong opinion of this change. It seems reasonable to me. If no one speaks up against it then I would say 👍 |
@adelbertc I think you added |
Current coverage is
|
Hm, this is a lot nicer and no consequences that I can think of at the moment. 👍 from me, though perhaps we should wait to see if @tpolecat has any concerns before merging? Also should probably do the same for the other ones, |
@ceedubs assuming @tpolecat does sign-off on this, do you want to follow @adelbertc's suggestion and modify |
@non @adelbertc sure that looks like it would work. I might not get to this for a couple of days, but I'll give it a go. |
I updated @adelbertc you mentioned that you were becoming a big fan of these type classes. Do you have a code base using these that you could compile against this branch to see if there might be unfortunate implicit resolution/inference implications? Or are they using Scalaz and not Cats? |
If @adelbertc signs off on these then 👍 from me too. |
Looks good to me - the code I have that does use these are all living in Scalaz currently. That being said the tests seem to pick up the instances just fine, so 👍 :-) |
Change MonadError from F[_, _] to F[_]
I was working with MonadError today and the
F[_, _]
approach made me usequite a few type lambdas when I was working with types like Future/Task.
Since the error type is already encoded as another type parameter, as
far as I know we don't really lose anything by using a type constructor
with a single parameter for
F
.It's quite possible that there's a reason for using
F[_, _]
. If anyoneknows of one, please speak up.