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

Impove subtyping #41

Merged
merged 5 commits into from
Mar 21, 2022
Merged

Impove subtyping #41

merged 5 commits into from
Mar 21, 2022

Conversation

kevinbarabash
Copy link
Owner

@kevinbarabash kevinbarabash commented Mar 20, 2022

Relying on setting .src to "App" or "Lam" was insufficient to correctly enforce sub-typing because subtype constraints could occur on deeply nested types far away from a function call. This updates the Constraint type to be an object that contains the .types being constrained as well as the direction ("Left" or "Right") of the .subtype constraint if there is on. This allow any subtype constraints to be fully propagated throughout the system.

TODO:

  • drop the .src property on TFun nodes

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

Successfully merging this pull request may close these issues.

None yet

1 participant