[#29374] nil.to_s — Shugo Maeda <shugo@...>

前田です。

59 messages 2006/09/01
[#29375] Re: nil.to_s — "U.Nakamura" <usa@...> 2006/09/01

こんにちは、なかむら(う)です。

[#29380] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29387] Re: nil.to_s — Shugo Maeda <shugo@...> 2006/09/01

前田です。

[#29390] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29398] Re: nil.to_s — "NARUSE, Yui" <naruse@...> 2006/09/01

成瀬です。

[#29400] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29491] symbol and string — Tanaka Akira <akr@...>

open-uri で :proxy=>nil という指定を行うと、以下のようにエラーになります。

33 messages 2006/09/05
[#29499] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/05

まつもと ゆきひろです

[#29500] Re: symbol and string — Tanaka Akira <akr@...> 2006/09/05

In article <1157470154.047826.13379.nullmailer@x31.priv.netlab.jp>,

[#29503] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/06

まつもと ゆきひろです

[#29504] Re: symbol and string — Tanaka Akira <akr@...> 2006/09/06

In article <1157505538.340126.8472.nullmailer@x31.priv.netlab.jp>,

[#29507] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/06

まつもと ゆきひろです

[#29512] Re: symbol and string — keiju@... (石塚圭樹) 2006/09/06

けいじゅ@いしつかです.

[#29529] Re: symbol and string — SASADA Koichi <ko1@...> 2006/09/08

 ささだです。

[#29530] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/08

まつもと ゆきひろです

[ruby-dev:29375] Re: nil.to_s

From: "U.Nakamura" <usa@...>
Date: 2006-09-01 09:39:00 UTC
List: ruby-dev #29375
こんにちは、なかむら(う)です。

In message "[ruby-dev:29374] nil.to_s"
    on Sep.01,2006 18:30:03, <shugo@ruby-lang.org> wrote:
| trunkでnil.to_sが"nil"を返すように変更されたので、まつもとさんに
| 「本気ですか?」と聞いたらどうやら本気のようです。

ぎゃっ!


| 個人的には、nilは無・空を表すオブジェクトだと思っているので、文字
| 列に変換したら空文字列になるというのはそんなに違和感はないんです
| が、どうでしょう。
| そう考えると、整数に変換すると0というのも割と自然なんじゃないかと
| 思います。

全く同感です。


ちょっと整理してみましょうか。

1.8.5
  String(nil)  #=> ""
  Integer(nil) #=> 0
  Float(nl)    #=> TypeError
  nil.to_s     #=> ""
  nil.to_i     #=> 0
  nil.to_f     #=> 0.0

現時点での1.9
  String(nil)  #=> "nil"
  Integer(nil) #=> TypeError
  Float(nl)    #=> TypeError
  nil.to_s     #=> "nil"
  nil.to_i     #=> 0
  nil.to_f     #=> 0.0

前田さんのメールからの将来展望
  String(nil)  #=> "nil"(?)
  Integer(nil) #=> TypeError
  Float(nl)    #=> TypeError
  nil.to_s     #=> "nil"(?)
  nil.to_i     #=> NoMethodError
  nil.to_f     #=> NoMethodError(?)

正直、将来展望が一番納得いかない、というか、それならnil.to_s
もNoMethodErrorじゃないの? とかいう気がします。嫌ですけど。
というわけで、
  String(nil)  #=> TypeError
  Integer(nil) #=> TypeError
  Float(nl)    #=> TypeError
  nil.to_s     #=> ""
  nil.to_i     #=> 0
  nil.to_f     #=> 0.0
というあたりを希望します。


それでは。
-- 
U.Nakamura <usa@garbagecollect.jp>



In This Thread