まつもと ゆきひろです

In message "[ruby-dev:8748] Re: [REQ] Array#each{|a,b,...|}, Array#shift/pop(num)"
    on 99/12/28, Kazunori NISHI <kazunori / swlab.csce.kyushu-u.ac.jp> writes:

|で、Array#shift/pop(num) は、あると便利&あっても問題ないと思っている
|のですが、どうでしょうか?
|
|  data = XxxData.new(*array[0,3])
|  array[0,3] = nil
|
|でできる事はわかったのですが、他の人(含、未来の自分)がこういうコードを
|見ると無駄に焦点がボケる気がするので、Array#first/at/last のような語彙
|として欲しい気がしています。

本当に欲しいものは shift/pop ではなく、

class Array
  def foo(*args)
    result = self[*args]
    self[*args] = nil
    result
  end
end

なる定義の「破壊的な抽出」メソッドではないですか?
名前はなんだろう?

                                まつもと ゆきひろ /:|)