まつもと ゆきひろです.

In message "[ruby-list:309] Request for array"
    on 96/07/19, Keiju ISHITSUKA <keiju / shljapan.co.jp> writes:
|
|けいじゅ@SHLジャパンです. 
|
|Arrayについて要望があります.

|で, リクエストなのですが, 配列が空かどうかを判断するメソッドを用意して
|下さい. できれば, その関数は, 要素としてのnilは要素としない判断を行な
|うメソッドとして下さい.

これは….ちょっと考えさせてください.というのもperlと違って
rubyではnilも立派な値なので,

  [ nil, nil, nil ]

はしっかり3要素の配列になります.3つも要素が入っている配列
(lengthも3を返す)をemptyと言ってしまって良いのか,という点に
ついて戸惑いがあります.

とはいえ,

  ary = [1,2,3]

としたとき,ary[100]の値がnilだったり(配列は拡張されない),

  ary[5] = 4

とするとaryが

  [1,2,3,nil,nil,4]

になったり(すき間にnilを入れる),石塚さんのおっしゃることが
まるで意味の無いことでもないような仕様であることも事実です.
もうちょっと説得してくださるとその気になるのですけど….

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