From: ts Date: 2004-05-09T21:46:59+09:00 Subject: Re: How to get the last 5 elements of an array? >>>>> "D" == David Alan Black writes: D> "Robert Klemme" writes: >> irb(main):001:0> class Array;def last(n);size>=n ? self[-n .. -1] : >> self;end;end D> Isn't that how Array#last works now? No, for 2 reasons * Array#last always return an object Array * it dup the return value when size < n svg% cat b.rb #!/usr/bin/ruby class Array def lest(n) size>=n ?self[-n..-1]:self end end class A < Array end a = A.new(2, 1) p a.lest(1).class p a.last(1).class svg% svg% b.rb A Array svg% Guy Decoux