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

JuvixCore transformation: Compute ArgsNumInfo for each variable occurrence in function position #1480

Closed
lukaszcz opened this issue Aug 25, 2022 · 1 comment
Labels
core Related to JuvixCore enhancement New feature or request pending-review

Comments

@lukaszcz
Copy link
Collaborator

lukaszcz commented Aug 25, 2022

Depends on PR #1421

Notes

  • The computation should be based on type information associated with the binders and the function definitions.
  • Information about type arguments applied to a node may also be necessary to compute ArgsNumInfo.

Starting point

  • Core/Transformation/Base.hs defines the transformation framework.
  • Core/Extra/Recursors.hs contains the general recursors useful in implementing the transformations.
@lukaszcz lukaszcz added enhancement New feature or request pending-review core Related to JuvixCore labels Aug 25, 2022
@lukaszcz lukaszcz added this to the 0.3 milestone Aug 25, 2022
@lukaszcz lukaszcz changed the title Compute ArgsNumInfo for each variable in function position JuvixCore transformation: Compute ArgsNumInfo for each variable in function position Aug 25, 2022
@lukaszcz lukaszcz changed the title JuvixCore transformation: Compute ArgsNumInfo for each variable in function position JuvixCore transformation: Compute ArgsNumInfo for each variable occurrence Aug 25, 2022
@lukaszcz lukaszcz changed the title JuvixCore transformation: Compute ArgsNumInfo for each variable occurrence JuvixCore transformation: Compute ArgsNumInfo for each variable occurrence in function position Aug 25, 2022
@lukaszcz
Copy link
Collaborator Author

lukaszcz commented Aug 26, 2022

I think this transformation is not necessary. One can get the information about the type directly during compilation.

If the type information is not available or the type of the variable is polymorphic with its target a type variable, then the number of arguments must be determined at runtime from the closure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Related to JuvixCore enhancement New feature or request pending-review
Projects
None yet
Development

No branches or pull requests

1 participant