-
Notifications
You must be signed in to change notification settings - Fork 99
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
Allow operator methods to be memoized #79
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I love this! Any idea about the build failure?
Yeah, looks like older versions of Ruby aren't fans of that hash syntax. I'll fix these up and reroll shortly, shouldn't be a problem. |
9f57b37
to
8f57f8f
Compare
Re-rolled and fixed |
Very nice! @matthewrudy Please review. |
Any chance on this getting merged, @matthewrudy? |
ping @matthewrudy 👍 |
9d66c95
to
34f90dd
Compare
Been a year now, figured I'd check in. |
8f57f8f
to
7fac529
Compare
It's that time of year again. Just checking in on my PR. |
@dark-panda Matthew, the owner of this repo, died in 2019. I just found out. I have created a new org in his memory, called |
Memoizing operators will raise a syntax error due to the operator symbols being injected into the eval'd code. We can allow operator memoization by using some mangled names instead. To (hopefully) avoid clashing with any existing method names, we've added some underscores to the names and upper-cased them.
7fac529
to
273c9f4
Compare
FYI: Added this alert to the new memoist repo Important RecommendationConsider using MemoWise instead, as it is maintained, fully tested, provides thread safety guarantees, and is much, much faster. Other AlternativesIn case you need a tool with this feature set that is currently maintained, check out: Tip Seriously though, read the important note above. Warning If you must continue - be aware that this is unmaintained software. |
Memoizing operators will raise a syntax error due to the operator symbols
being injected into the eval'd code. We can allow operator memoization by
using some mangled names instead. To (hopefully) avoid clashing with any
existing method names, we've added some underscores to the names and
upper-cased them.