Skip to content
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

Fully infer method capability annotations #140

Open
mukul-rathi opened this issue Jun 28, 2020 · 0 comments
Open

Fully infer method capability annotations #140

mukul-rathi opened this issue Jun 28, 2020 · 0 comments
Labels
enhancement New feature or request maybe These are ideas that might be worth pursuing

Comments

@mukul-rathi
Copy link
Owner

Right now we annotate each method type-signature with capabilities used.

I think the method annotations could be inferred by constructing a method call graph for each class, and then generating constraints - if method M1 calls M2, then capabilities_used(M1) is a superset of capabilities_used(M2).

Then you solve the constraints to get the method annotations. There’s potentially a quadratic number of constraints (with respect to number of methods) but in theory doable. If we tried to infer parameter annotations as well, this call-graph based approach would most likely lead to far too many constraints and likely wouldn’t scale.

@mukul-rathi mukul-rathi added the enhancement New feature or request label Jun 28, 2020
@mukul-rathi mukul-rathi changed the title Fully infer method annotations Fully infer method capability annotations Jun 28, 2020
@mukul-rathi mukul-rathi added the maybe These are ideas that might be worth pursuing label Jan 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request maybe These are ideas that might be worth pursuing
Projects
None yet
Development

No branches or pull requests

1 participant