-
Notifications
You must be signed in to change notification settings - Fork 78
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
jkind subsumption #3525
base: aspsmith/normalize-jkind
Are you sure you want to change the base?
jkind subsumption #3525
Conversation
bf21eef
to
8ff9303
Compare
typing/typedecl.ml
Outdated
match decl.type_manifest, decl.type_kind with | ||
| None, _ -> decl | ||
| Some _, (Type_record _ | Type_record_unboxed_product _ | Type_variant _ | Type_open) | ||
when not (Builtin_attributes.has_or_null_reexport decl.type_attributes) |
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.
Revisit this after rebase
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.
Partial review. More to come.
6bea51c
to
a1afe21
Compare
2229bad
to
ee61b4c
Compare
Note to self: I've reviewed through "Promote tests" (except for the files that GitHub knows I haven't finished yet) |
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.
A bunch more review. Still more to go! (I have not yet reviewed constraint.ml, fuel.ml, quality.ml, recursive.ml, or the main payload in jkind.ml.)
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.
All tests reviewed 🎉
After reviewing the tests, I'm pleased to report that I didn't spot any soundness bugs! 🔉 Now onto the actual implementation, which I can happily lower my level of scrutiny, as I'm pretty sure it's basically correct via the tests. |
OK. I have reviewed everything in this patch up to now. Looking pretty good! |
I've reviewed commits up through "Improve subsumption comments" |
…iam-jkind-subsumption
Reviewed most recent commits. |
…iam-jkind-subsumption
…iam-jkind-subsumption
Reviewed most recent commits. |
Improve the implementation of
Jkind.sub_jkind_l
to give a proper subsumption check. The implementation is based on the rules injane/doc/proposals/kind-inference.md
. At the moment, this check is quadratic because we don't have a proper comparison function on types. But based on my anecdotal experience building and running tests, this doesn't seem to hurt performance too bad.