Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Scala 3 Fix evaluation involving captured variables#221

Merged
adpi2 merged 6 commits into
scalacenter:mainfrom
adpi2:captured-variables
Jun 1, 2022
Merged

Scala 3 Fix evaluation involving captured variables#221
adpi2 merged 6 commits into
scalacenter:mainfrom
adpi2:captured-variables

Conversation

@adpi2
Copy link
Copy Markdown
Member

@adpi2 adpi2 commented May 31, 2022

No description provided.

adpi2 added 5 commits May 31, 2022 10:01
Otherwise the expression denotations are unsound between the 2 phases
Time travel does not work after LambdaLift
because LambdaLift creates new symbols.
To resolve a term by reflection we need to know its name
after BGen, and its capture. So we insert a phase after all
the transform phases, called resolve-reflect-eval whose
purpose is to resolve the temporary reflectEval calls into
more precise methods. The EvaluationStrategy
attachment conveys information about the term that
must be evaluated.
@adpi2 adpi2 force-pushed the captured-variables branch from 3e87d90 to 680b670 Compare May 31, 2022 14:40
To fix @main test, we need to store the expression symbol
in a distinct phase group from the ExtractExpression.
@adpi2 adpi2 merged commit a14d459 into scalacenter:main Jun 1, 2022
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.

1 participant