Architecture Refactoring: My Fork, Flexibility, and Performance Gains #834
Replies: 3 comments 7 replies
-
That is a very impressive performance gain! I'm interested in trying this implementation in my project. It would be helpful to know a) a more complete list of missing functionality; b) how "drop-in" a replacement can it be for expr - do the top-level functions and structures have the same names and operation? Some areas that I make use of: overriding all math operators (mostly via patcher), many fucntions defiend on the environment, ternary operator (I mention because I think it is not ipmlemented in your version). |
Beta Was this translation helpful? Give feedback.
-
Cool! I'd like to take a look. Maybe we can bring some of this performance to the Expr project. |
Beta Was this translation helpful? Give feedback.
-
As with all benchmarks I was able to find the expression which is faster in expr 🙃
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello!
I've created a fork of your expr repository—you can view my project here. During the process, I significantly reworked the architecture, focusing on optimization. One of the key changes was replacing the virtual machine with expression assembly in the form of a chain of closures, which significantly increased compilation speed by ~6x (unexpectedly) and execution speed by ~18x (as expected).
My fork is currently in its early stages: some functionality is still missing or not fully implemented. However, I believe the proposed architectural solutions could be useful for the further development of the project.
I'd be happy if the original repository's developers and anyone else interested would take a look at my fork, provide feedback, or perhaps join the discussion and collaboration on improving expr-cls.
Thank you for your work and this excellent project!
Sincerely,
guamoko995
Beta Was this translation helpful? Give feedback.
All reactions