From: "trans (Thomas Sawyer)" Date: 2012-07-16T05:25:03+09:00 Subject: [ruby-core:46499] [ruby-trunk - Feature #6737] Add Hash#read and alias as #[]. Issue #6737 has been updated by trans (Thomas Sawyer). > What is wrong with #fetch ? There's one important differnce, `#fetch` raises an error when a key isn't present, whereas #read returns nil. I worked on the design in pure Ruby, and at first I did try using #fetch, but ultimately concluded it was best to depend on #read and #key?. It's easy enough to write #fetch in terms of the other two, but the other way round involves catching the error that #fetch raises, and that is too inefficient. ---------------------------------------- Feature #6737: Add Hash#read and alias as #[]. https://bugs.ruby-lang.org/issues/6737#change-28135 Author: trans (Thomas Sawyer) Status: Open Priority: Normal Assignee: Category: core Target version: 2.0.0 Just, generally speaking it is nice to have a word named method for things when that suites readability better. Most operators (outside of numerical math, of course) have word equivalents. I actually hope you will accept this request based on this merit alone. But more specifically this is also related to #6442, "CRUDifying" Hash's design. Adding #read is essentially the first step in doing this. Since #read, being the "R" in CRUD, would be one of the core methods, its preferable to have word-named method to go along with other methods, #store (for create and update) and #delete to act as that foundation. Obviously there is nothing earth shattering here, just asking for an alias at this point. I'd like to incrementally submit requests/patches to "CRUDify" Hash rather then submit one huge patch as it will be much easier to test and ensure backward compatibility that way. -- http://bugs.ruby-lang.org/