-
Notifications
You must be signed in to change notification settings - Fork 41
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
Trying to use BiTraversable #252
Comments
I haven't had a chance to try any ideas out yet, but when I do, I'm going to start looking at the Result module in Specifically, Result's Traversable module has an explicit signature that helps unify the t type (but that signature seems to be missing the applicative_t type). For Bitraversable, the signature seems complete, but the actual module seems to be missing the signature, which is probably just an oversight that might be responsible for the fact that the compiler can't tell that |
Yeah, I don't know for sure, but there have been some sneaky issues in some of the things in bs-abstract where some functions that aren't using universal quantification are accidentally unifying some type variables. I think there was an issue like this for Foldable, and I vaguely recall something with Apply/Traversable too. |
I made a PR to Bastet (the new bs-abstract), which has been merged. I expect that change to fix this issue. I think we need a new npm release of bs-bastet (1.2.4), and we'll need to actually depend on Bastet (#255) but once that happens, I think this should be fixed. |
Read through #255, but does this at least work now with the PR to bs-bastet having been merged? |
It will if you use |
Relude 0.59 is out now, with a peer-dependency on Bastet 1.2.5, which should have a fix for this issue. I think we should be good, but please reopen this if anything funny is still happening. |
Sounds like there might still be something funny going on here. I'm not 100% sure what that may be, but I'll look into it. |
Minimal use case for tests...
For a given input |
Little note, not sure if it helps but here's Bastet's impl. |
Any updates on this one? |
@erlandsona - is this an issue in bastet or relude? |
@andywhite37 good question I'm instantiating my instances through Relude and judging by the error message I posted, I'm not seeing any Bastet references so I'll assume it's a Relude issue? |
I'm tying up some loose ends on an unrelated branch, then I'll try to reproduce this. I really thought the Bastet update should fix the Edit: I wonder if inside |
Ok, I think maybe I have it fixed in #264. I'll make a release and let us know if this works @erlandsona |
Great! |
Ok, a hopeful fix is released in v0.62.0. I'll close this, but feel free to re-open if the problem still exists. |
Sorry @mlms13 - I didn't see your comment right before mine |
No worries, looks like we had the same idea, so hopefully that will take care of this one once and for all. |
I've got this code...
And I'm getting this error...
@mlms13 said it should be unifying and might be bug? So opening this to track here...
The text was updated successfully, but these errors were encountered: