In article <1039071939.726071.943.nullmailer / picachu.netlab.jp>,
  matz / ruby-lang.org (Yukihiro Matsumoto) writes:

> |調べてみると to_ary が定義されているためらしいのですが、なんで定義され
> |てるんでしょう?
> 
> 多重代入の右辺にしたいから、かなあ? 

ですかねぇ。うぅむ。

URI が 7つ組(7-tuple)なのは事実で、Ruby では tuple も Array で表すので、
これはこれで正しいという見方もできます。でも、URI よりも tuple な感じ
がする Struct は to_ary を持っていないことや、7つというのは(最後の 2つ
は無視できることが多いとはいえ)即座に把握できる限界(マジックナンバー 7?)
なうえ、ほとんど使わない userinfo が 2番目にあって覚えにくいことを考え
あわせると、URI は to_ary を定義する程「配列らしい」とはいえないんじゃ
ないかなぁ、という気がします。

あと、ついでに書いておくと、URI === uri じゃない所もなかなか意外ですね。
URI::Generic が URI を include するといいんじゃないかという気がします。
-- 
[田中 哲][たなか あきら][Tanaka Akira]
「ふえろ! わかめちゃん作戦です$(C⊇」(Little Worker, 桂遊生丸)