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

Letrec lifting #1579

Merged
merged 78 commits into from
Oct 21, 2022
Merged

Letrec lifting #1579

merged 78 commits into from
Oct 21, 2022

Conversation

janmasrovira
Copy link
Collaborator

@janmasrovira janmasrovira commented Oct 5, 2022

closes #1516.
This pr adds letrec lifting to the lambda lifting transformation.

It also adds other features useful for debugging:

  • Adds the flags --eval and no-print to the juvix dev core read command.
  • Adds a simple scope checker that checks that all top nodes are closed.
  • The symbol number is always printed for symbols that are being defined.

@janmasrovira janmasrovira added the core Related to JuvixCore label Oct 5, 2022
@janmasrovira janmasrovira self-assigned this Oct 5, 2022
@janmasrovira janmasrovira linked an issue Oct 5, 2022 that may be closed by this pull request
@janmasrovira janmasrovira marked this pull request as ready for review October 12, 2022 10:25
src/Juvix/Compiler/Core/Extra.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/LambdaLifting.hs Outdated Show resolved Hide resolved
test/Core/Eval/Base.hs Outdated Show resolved Hide resolved
tests/Core/positive/test040.jvc Outdated Show resolved Hide resolved
@janmasrovira janmasrovira marked this pull request as draft October 18, 2022 22:13
@janmasrovira janmasrovira marked this pull request as ready for review October 21, 2022 08:05
Copy link
Collaborator

@lukaszcz lukaszcz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix the evaluator. Otherwise seems fine.

src/Juvix/Compiler/Core/Evaluator.hs Outdated Show resolved Hide resolved
@lukaszcz lukaszcz merged commit b02f2f8 into main Oct 21, 2022
@lukaszcz lukaszcz deleted the 1516-letrec-lifting branch October 21, 2022 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Related to JuvixCore lifting
Projects
None yet
Development

Successfully merging this pull request may close these issues.

LetRec-lifting
2 participants