From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?= ) Date: 1998-04-08T14:30:24+09:00 Subject: [ruby-list:7366] Re: Q: jcode.rb tr(String + nil) けいじゅ@日本ラショナルソフトウェアです. In [ruby-list :7361 ] the message: "[ruby-list:7361] Re: Q: jcode.rb tr(String + nil) ", on Apr/08 13:30(JST) Yukihiro Matsumoto writes: >まつもと ゆきひろです >|昨晩、この動作を別のライブラリ(自作の ndtp(CD-ROM 辞書検索) 用のも >|の)でボロボロでてきて、「nil」の扱いについて、ちゃんとした方がいい >|なと思いました。私は安易に nil を返すようなメソッドを作っていたの >|で... > >String#+とString#concatは「nilを受け付けるようにしようかなあ」 >と思い始めてます. そうですね. そのぐらいはいいですかね... Array#+/Array#concatでは許さ れていますしね. そうすると, nil == nil | false | [] | "" | 0 ってイメージになるのかな? でも, In [ruby-dev :2093 ] the message: "[ruby-dev:2093] Re: new coerce ", on Apr/06 18:20(JST) Yukihiro Matsumoto writes: >まつもと ゆきひろです >| nil op val -> val >| >|ここまですると危険かなあ... > >Objective-Cはこうなってます.内輪の話になりますが,CXでもそ >うしてました.でも,これだとけっこうバグが見付からずに素通り >しちゃう傾向があるみたいなんでrubyでは採用してません. にあったように, 結構バグの元になりますから, あんまり拡張するのも何なん ですかね. 今は, 論理演算(false) と +([],"",0), concat([],"")だけなのかな? どうせなら, nil.concat []or"" 1 + nil も許します? __ ................................石塚 圭樹@日本ラショナルソフトェア... ----------------------------------->> e-mail: keiju@rational.com <<---