Bug #10113
closedRuby memoization behaving oddly when using hash keys with spaces
Description
Trying to use simple Hash memoization with a ruby hash in a class method, it "fails" when having spaces as the hash key. Example code is attached.
When calling the memoization method, it fails to maintain the instance variable. It resets the variable every time the method is called.
When not having spaces in the key of the Hash, it works as it should, memoizing the variable.
P.S. Despite my ruby version indicated bellow, it fails in the newest as well.
Files
Updated by cesario (Franck Verrot) over 10 years ago
Ron Arias wrote:
Trying to use simple Hash memoization with a ruby hash in a class method, it "fails" when having spaces as the hash key. Example code is attached.
When calling the memoization method, it fails to maintain the instance variable. It resets the variable every time the method is called.
When not having spaces in the key of the Hash, it works as it should, memoizing the variable.
I can only reproduce the behavior you are describing if I make the "heavy_calculations" method return nil or false. Do you have any specific work done in this method?
P.S. Despite my ruby version indicated bellow, it fails in the newest as well.
I run on ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin13.0].
Updated by nagachika (Tomoyuki Chikanaga) over 10 years ago
- Status changed from Open to Feedback
Hello, Ron. Thank you for your report.
But I cannot understand what is the "fail" you mean. Please give us a self-contained executable script to clarify the point.
Thanks.
Updated by marcandre (Marc-Andre Lafortune) over 10 years ago
- Status changed from Feedback to Rejected
No feedback, so closing.
I can't see how this could possibly "fail".