[#23332] to_str再考 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

15 messages 2004/04/05

[#23380] [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

17 messages 2004/04/15
[#23400] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。落ちる場所がわかりました。

[#23402] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[#23403] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — nobu.nakada@... 2004/04/16

なかだです。

[#23405] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[#23407] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[ruby-dev:23406] Re: to_str再考

From: Tanaka Akira <akr@...17n.org>
Date: 2004-04-16 05:23:09 UTC
List: ruby-dev #23406
In article <1082091632.656395.26471.nullmailer@picachu.netlab.jp>,
  matz@ruby-lang.org (Yukihiro Matsumoto) writes:

> 確かにそうなんですが、そもそもそのような区別は不要かもしれま
> せん。「==」ってのは汎用の比較演算子ですから。これを一貫性を
> 持って想定外のものを与えるとかならずnilを返すという定義にし
> ようとするとコストがかかるばかりで、それほど益はないのではな
> いかと思います。

えぇ、私もコストがどこまでかかるか、というところが問題だと思っています。

とりあえず Kernel#== で、引数オブジェクトの == の実装が Kernel#== でな
かったら nil を返すのはどうだろうかというのを考えたのですが、(実行速度
を気にしないとしても) Delegate や DRb で Kernel#== に転送している ==
実装とかを考えると完璧ではなく、さりとて記述コストを度外視して全部書け
ば完璧にはなるだろうがそれはとても保守の点で現実的ではなく...

まぁ、こういうことを考える脳味噌を節約するという意味で、

> やっぱ、falseにしようか。

というのは、それなりに妥当な気はします。

そうするとすれば、pathname.rb のテストはいまのままでもいいかな。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread

Prev Next