Greetings, all... Please excuse this message, which may appear "greedy"... perhaps different experts can share the effort of answering these questions. I am trying to have a deep rather than shallow understanding of Ruby... but that is slow in coming. I am curious as to the exact meaning of some of these items from the list of changes in 1.6.0... I have reproduced several here that were especially interesting and/or unclear (about 20% of the list). See below. Thanks for any comments... Hal > > Here's the brief list of changes from 1.4.x to 1.6.0. > This list is by courtesy of Tomoya Akamatsu. > > = Changes in 1.6.0 > > * no to_a for multiple assignment (uses to_ary if available) I don't understand this at all. > * rescue => variable > * rescue modifier > * rescue clause for method body May we see some examples? > * syntax enhanced, e.g. > > a,b = File::split "foo/bar" I see that this doesn't work in my 1.4.3 -- I thought this would have worked long ago. > a = yield b Meaning that the block can return a value? Does it use a return statement or is it optional? Or am I missing the point? > [1,2,3].sort do|a,b| b<=>a end.reverse Very nice... > [File::dirname "foo/bar"] What does this mean? Isn't it an array without the brackets? Or is this an array within an array? > * singleton method for nil,true,false ??? > no singleton method for Fixnums and Symbols yet Meaning what? And what is a Symbol? > * built-in 'final' ??? > * new regex \G (?>...) ??? > * regex does not support \< and \> offically ??? > * regex option /p renamed to /m Why? > * compile time string concatenation Example? > * Integer#modulo > * consistent %, divmod OK, this was discussed at MUCH length a few months ago... what is the end result? Can we summarize this, and is it consistent with other languages or not? > * nil as valid Hash value Hmm... so we can't compare against nil to find if a value is not there? > * Symbol object ???