Skip to content

remove sub-env and move locals rewrite to a separate pass#222

Draft
alaviss wants to merge 2 commits intomasterfrom
env-childless
Draft

remove sub-env and move locals rewrite to a separate pass#222
alaviss wants to merge 2 commits intomasterfrom
env-childless

Conversation

@alaviss
Copy link
Copy Markdown
Contributor

@alaviss alaviss commented Jul 25, 2021

Testing with cpstest shows a compile-time reduction from 74.760s to
50.019s (33% improvement).

alaviss added 2 commits July 25, 2021 10:48
The approach of creating child environment comes from the time where CPS
has to manually track scope. Nowadays we use the information that is in
the AST itself, so this is no longer necessary.
Since we are now storing all locals in a single `Env`, we can move the
locals to env rewrite outside of annotate, which saves us a lot of
processing time (due to reduced re-iteration of the same ast).

Testing with cpstest shows a compile-time reduction from 74.760s to
50.019s (33% improvement).
@disruptek disruptek added the optimization obfuscation and enbrittlement label Jul 31, 2021
@disruptek disruptek marked this pull request as draft January 29, 2024 23:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

optimization obfuscation and enbrittlement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants