Can you recommend a post/article explaining some of what makes Ruby's collections especially pleasant? Studying Ruby's stdlib design has been on my 'someday' list, but there's so much else there...
It's mostly how complete the API is and how consistent. For example:
* Hash#merge takes a block for conflict resolution. I use this all the time for aggregating counts.
* #sample
* #unique
* Everything has a change in place option by appending "!"
one beautiful design decision ruby made really on was that every method would have the option to take a block of code when it was invoked. the code block gets passed to the method as a closure. this makes writing collection apis very pleasant, since so many of them involve passing in a single closure to operate on each element.