-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Allow Tuple.Head and Tuple.Tail to work with EmptyTuple #17189
Conversation
|
I definitely agree, but that seems like the only way to make it work (and I think it's important to make it work since we want type-level programming with tuples), without changing the logic of match types. And I think trying to change it to fit the logic here is a very bad idea, -- There are, basically, no cases, where we should allow type parameters to violate type bounds, except here. But I'd offer the following compromise, -- we shouldn't return |
OK, makes sense. So we're making it more partial, rather than less - which is fine. And it allows for irreducible Tuple.Tail/Head types to nest, without running into type parameter bound checking issues. Now the problem is when can we change this, in terms of tasty compatibility? I assume next minor version. |
Yes that's a minor version change. It is backward compatible, but not forward compatible. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also rebased to solve some conflicts with the blacklist.
Your rebase, somehow, threw away my comments in 4983ebb |
Fixes #17186.
I think this is correct behaviour since we already allow things like