Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
(Builds upon the
fix-test-suite
branch from #63, only the last commit is important here)I made a transformer that removes the performance penalty for building Elm
Array
using something likeArray.fromList [ 1, 2, 3 ]
, by precomputing the resulting the shape of the transformations result. This optimization only applies when encountering list literals. I did this by copying the compiled code that does this transformation inside this repository.I made 2 benchmarks in JS-land to test the performance:
(Note that the order of the test suite is not the same as above, sorry about the confusion)
I do suspect that the benchmark is not representative as it might be over-learning/over-optimizing this short piece of code, but I don't know how to better test this.
I don't know how to get this proposal further than this. I can't run the benchmarks locally (they fail for some reason). I should be able to add this transformer to the configuration that enables/disables transformations, and I'll do that soon, but that's as far as I know how to go without further help.
How do I go about validating that this improvement works out well in practice? And what are the missing steps to get this in?