Optimize inferred partial constraint fn#3218
Conversation
|
This is ready for review. |
|
Some thoughts here: The ad-hoc nature of this optimization isn't especially pleasing. On the other hand, I do believe that it's fixing a bug: Without this, code that really seems like it should get TCOd, doesn't, leading to potential run-time explosions. If people can think of a smarter way to deal with this, I'm really open to it. |
|
Since I presume more optimizations will be added in the future (see #3244), some of which may be more expensive to perform, it might be a good idea to put these behind a flag. |
|
@matthewleon would you mind perhaps opening a PR that adds the corefn pass but that doesn't do anything? I have some concerns about the way this optimization is applied at the moment (in that it could be too wide reaching, given it's not actually |
|
Will do.
…On Tue, 24 Apr 2018 at 17:25, Gary Burgess ***@***.***> wrote:
@matthewleon <https://github.com/matthewleon> would you mind perhaps
opening a PR that adds the corefn pass but that doesn't do anything? I have
some concerns about the way this optimization is applied at the moment (in
that it could be too wide reaching, given it's not actually Partial-specific)
and would like to spend some time experimenting with that. But also #3244
<#3244> is based on this (in
that it uses a corefn pass), and I think that one is good to go in.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#3218 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AARBSxSOeFFVIqiuXEKRE3kHX43gl-bJks5tr5hcgaJpZM4Rptm1>
.
|
it does nothing for the moment created in response to purescript#3218 (comment)
|
I'll rebase this after merge of #3319 so that it becomes a PR for just the inferred partial constraint optimization. |
it does nothing for the moment created in response to purescript#3218 (comment)
|
@matthewleon Are you interested in picking this back up? |
Yes. Will do it on Wednesday. |
fixes purescript#3157 adds a CoreFn optimization pass
8e44cca to
a0ffb7a
Compare
a0ffb7a to
db255c2
Compare
|
@natefaubion rebased and fixed the conflict. Please feel free to correct the composition order I chose for the optimizations if there is a problem there. |
|
Thanks! |
fixes #3157
supersedes #3195
Adds a CoreFn optimization pass.