-
Notifications
You must be signed in to change notification settings - Fork 28
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 dependency on lens #1
Comments
I don't think the benefit of removing the lens dependency outweighs the usefulness of the Swapped instance. |
Since Cabal 3.0 allows for multiple libraries to be exported from a package, we could split the dependencies up into two exposed libraries.
Users of the Library would have to import two modules to use the
where the first module is exposed by The advantage of this approach is that if a user want to use the |
Unfortunately that would make |
You're not wrong. Would that really be a problem since all instances for the There's always some trade-offs to be made. I think the orphan instance(s) are a minor triviality and the convenience for the library consumer is major win. I greatly wish more packages did this so that I could opt out of depending on |
I think the penalty of orphan instances is very high and to be avoided. If something as trivial as depending on lens resolves this penalty, then I think it is a reasonable solution. |
@tonymorris A dependency on |
I took the liberty of making a fork without any |
Couldn't the lens dependency be moves to another package that uses the same modules? So that users can opt-in for the Swappable instance. |
It would be nice to remove the dependency on the
lens
package and use smallerpackages such asprofunctors
. Unfortunately, this means foregoing theSwapped
instances.Discussion on this issue is here:
ekmett/lens#526
The text was updated successfully, but these errors were encountered: