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

Add an Interface view of Packages #161

Closed
johnynek opened this issue Mar 7, 2019 · 1 comment
Closed

Add an Interface view of Packages #161

johnynek opened this issue Mar 7, 2019 · 1 comment

Comments

@johnynek
Copy link
Owner

johnynek commented Mar 7, 2019

Currently, when we typecheck and render fully typed ASTs (TypedExpr), we require all the fully typed packages of all the imports.

We should be able to have an interface view that only lists the values and types exported by a package, without needing the fully typed ASTs.

The value of this is to cement in the design that we can do this separately, and as long as an interface does not change, there is no need to rerun a package typechecking.

This becomes really nice when coupled with hashing of the API or when used with build systems such as bazel that can make compilation only depend on the API artifacts, and not the fully typed ASTs.

For this, we would likely have a linking stage at the end that converts fully typed ASTs into some other output (JSON, Yaml, skylark, JVM class files, C, etc...)

@johnynek
Copy link
Owner Author

johnynek commented Mar 8, 2019

done in #162 ... no serialization yet, but that is probably a subissue of #54

@johnynek johnynek closed this as completed Mar 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant