This is a *great* post. Thank you! And just reading everyone's response helps so much! @zimbtam, One request: Can you please post this as a wiki somewhere? That way people can add to it as they go. Some of mine: 1. A (somewhat) philosophical resistance to Enumerator.next? or Enumerator.has_next? IMO, reaching the end of iteration is not an exceptional condition, but Ruby treats it that way. So much so that 1.9 adds a method in Kernel (loop) that squelches the StopIteration exception but continues to not provide this method. 2. Sometimes, I do think that Strings not being immutable bites in odd ways. I wish (sometimes) Strings were treated like Fixnums. More as I run into them. Regards, Kedar -- Posted via http://www.ruby-forum.com/.