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

Generate fewer defunctionalization symbols for local definitions #593

Merged
merged 1 commit into from
Jun 6, 2024

Conversation

RyanGlScott
Copy link
Collaborator

We can exploit the fact that defunctionalization symbols are never partially applied to local variables to generate fewer defunctionalization symbols for definitions where local variables are in scope. I've written up the details in a new part of Note [Defunctionalization game plan] (Wrinkle 1: Partial kinds) in D.S.TH.Promote.Defun.

This has no effect on any user-visible behavior—it is just an optimization.

Fixes #592.

We can exploit the fact that defunctionalization symbols are never partially
applied to local variables to generate fewer defunctionalization symbols for
definitions where local variables are in scope. I've written up the details in
a new part of `Note [Defunctionalization game plan] (Wrinkle 1: Partial kinds)`
in `D.S.TH.Promote.Defun`.

This has no effect on any user-visible behavior—it is just an optimization.

Fixes #592.
@RyanGlScott RyanGlScott merged commit 38822be into master Jun 6, 2024
24 checks passed
@RyanGlScott RyanGlScott deleted the T592-less-defun-bloat branch June 6, 2024 11:24
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.

Reduce defunctionalization symbol bloat related to local variables
1 participant