From: gotoken@... (GOTO Kentaro) Date: 1998-11-04T17:28:59+09:00 Subject: [ruby-list:10626] Re: case with Class ごとけんです In message "[ruby-list:10608] Re: case with Class" on 98/11/04, Yukihiro Matsumoto writes: >まず第1に Class#=== を == にする予定もつもりもありません. 御意。 >第2に「=== は包含かどうか」ですが,たとえば正規表現のマッチ >は50歩くらい譲っても「包含」ではないと思いますし, そうですか?? もともと正規表現は正則集合の表し方ですから someRegexp === someString は所属性判定を兼ねていると思 います(包含は集合同士の関係なので語用がちょっとマズい)。 もちろんマッチした位置を返すのでもっと強い意味を持って ますし、拡張された正規表現が正則集合になっているかどう かはニワカには分かりませんが。 もっとも、 > もともと包 >含という意味はなかったと思っています.が,「同値」でもありま >せんね.強いて言えば「caseに便利な『一致』判定」でしょうか. >で,この観点から Array#=== が include? なのはあまり便利でな >いように思いました. は確かに議論の余地があるのは認めます。 僕の考えは次の通りです。 case の when に来るのは何かの分割のひとつになっている ことが多いと思ってよい。そこで、互いに素な要素からなる 複数の配列を用いて場合わけするのは読み書きに便利と思う。 また Array#=== が .include? 以外となるとふさわしい動作 を思い付きません。 == で使う人がそれほどいるとは僕は思 わないし。 -- gotoken