IMHO the text

"... Returns nil if any indices are out of range"

from the docs for Array#[] does not fully specify the following behavior

$ ruby -v -e 'puts [1,2,3][2,2].inspect'
ruby 1.6.2 (2000-11-20) [i686-cygwin]
[3]
$ ruby -v -e 'puts [1,2,3][2..3].inspect'
ruby 1.6.2 (2000-11-20) [i686-cygwin]
[3]

Regards,

Robert