From: Fujimaru Hiroyasu Date: 2002-11-03T13:09:14+09:00 Subject: [ruby-list:36279] Re: ar=[];ar+=2でエラー  藤丸です。  メソッド呼び出しと区別が付かない件は、他の人から教わって理解しました。 #みなさんありがとうございました > 初期化されていないローカル変数はnilです。 > > if false > v = true > end > p v #=> nil  これが通るという事で、「初期化されていないローカル変数はnil」という言い 方もわかるのですが、しかし、そういう言い方をした時に、代入前だと if v==nil やら if v.nil?  がエラーになるのは微妙に気持ち悪くないですか?  と、いうのも、折角.nil?というメソッドがあるわけで、nilというからにはtrue が返ってくれる方が嬉しいです。  現状を理解した上で無理な事を言ってるとは思うのですが、ひだかさん曰くの > ソースの都合とか実装の都合っていうのはRubyにはそぐわない気がします。 >目的に合わせて実装してあるわけですし、Rubyの方針としては、使いやすければ >インタプリタの実装が複雑になってもかまわない、という方向だと思います。  こういう方向で理想的な動作を考えるとすると、nilの時には.nil?はtrueを返し て欲しいと思いませんか? ============ 藤丸博康