I'll try to answer the easy ones. jmichel / schur.institut.math.jussieu.fr (Jean Michel) writes: > the reason why sort! does not return its result for arrays of length > 1 eludes me. sort! returs nil if the message receiver (the array) is not changed, as do many (but not all) of the "!" methods. > - I was very surprised that each_pair is not defined for arrays, only > hashes. Of course you can roll your own: Try each_with_index instead. [1, 2, 3].each_with_index { | value, index | ... } This method is defined in the Enumeration (or Enumerable) module. > - I have some problems with scopes. In particular, that one can not > define local functions. The closest I could come with is to define a > local Proc object and use .call on it. Is that the recommended way? That's certainly possible, but we tend to use blocks instead of anonymous subroutines. Jim -- Jim Menard, jimm / io.com, http://www.io.com/~jimm/ "I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." -- Alan Kay