In message <977594407.11894 / fsinet.or.jp>
wakou / fsinet.or.jp writes:

> なお、"string" =~ /re/, /re/ === "string" に関しては、見た目にも真偽式
> として使いたくなる記述ですので、これらは nil を返すままでいいかとは思
> います。
> 
> という事で、=~ はそのままで、/re/.match() は常に MatchData という原さ
> んの案に一票。

多重代入で to_ary が呼ばれるがごとく,if/unless/while の条件の文脈で呼
ばれる to_bool なんていうメソッドはどうだろうなんてちょっと思ったり.
    
    Object#to_bool     => true
    TrueClass#to_bol   => true
    FalseClass#to_bool => false
    Nilclass#to_bool   => false

ぐらいを基本にして,subclass で適当に override する,と.

MatheData の場合には match してたら true,それ以外では false っていう
ことにする.なんとなく統一的にはできますね.


ただこんなことをするとあらゆる条件判定でメソッド呼び出しが一段増えるか
ら,どう考えても性能面で悪影響を与えるというのが難点.暗黙のメソッド呼
び出しが増えるのもあんまり気に入らない.

# 自分でもよくないと思うことをとりあえず提案してみるのはやめなさい :-P


-- 
柳川和久 @ 東大阪市 . 大阪府                              December 24, 2000
「死体は死体らしく, おとなしく寝てろっ!」