西@九大です。

From: matz / netlab.co.jp (Yukihiro Matsumoto)
> 本当に欲しいものは shift/pop ではなく、
...
> なる定義の「破壊的な抽出」メソッドではないですか?

本質的、というか汎用性を考えると、そうです。

  * まず、上述のような「破壊的な抽出」メソッドが(ないので)欲しい。
  * 次に、語彙として(*1)、Array#pop/shift(num) も欲しい。

です。

(*1) ruby の Array は特に強力なので(添字の書き方で色々できるので)、逆
に混乱する(読み書きにしくい)と感じる時がある。[n,m] だっけ?[n..m]だっ
け?みたいな。だから、array[-1] でもよいがなるべく array.last と書きた
い、array.splice(-1,3,nil) でもよいが、array.pop(3)と書きたい、と。

> 名前はなんだろう?

perl::splice は使った事ないのですが(何をやるものかわからなかったらしい)、
荒井さんのコードを見る限り、まさに Array#splice がピッタリな気がします。
(意訳:そうか、君か、君が splice だったのか)


From: gotoken / math.sci.hokudai.ac.jp (GOTO Kentaro)
> arity というのをむかしおねだりして実装してもらったような。
...
>   class Array
>     def myeach(&block)

これまた素晴しいですね。何で、そう上手く動くのかはわかりませんが(悔し
いらしい)。ていうか、こ、これ標準装備して下さい!(高飛車なお願い)

------------------------------------------------------------------
九州大学大学院システム情報科学研究科 情報工学専攻 博士後期課程三年
      西 和則   ( e-mail: kazunori / swlab.csce.kyushu-u.ac.jp )
------------------------------------------------------------------