In message "[ruby-list:17682] Re: <=> (Re: Hash にnil値を入れたなら)"
    on 99/10/14, YANAGAWA Kazuhisa <kjana / os.xaxon.ne.jp> writes:
>そうですよね.`<=>' という三種類(あるいは比較不能を含めて四種類)の結
>果を返す演算子で,「等しい」を意味するのが「nil/false」である,という
>仕様はあまりにも直観的でないと思います.
>
># 「比較不能」のためにとっといてくれ,と.

同感です。sort の オプションとして「<=>がcoerce出来ないとき
の挙動」が指定できれば嬉しいかなとはときどき思います。Array
には内容が同じクラスのモノであることを強制しないので。

>Array の比較が「要素の順序による一種の辞書順」であるのは十分に直観的だ
>と思うし,それを利用するのが不適切であるとはあまり思えません.

そうですね。Arrayだと全部評価するのがイヤなら、nonzero? をつ
かえばすむわけで、もし nonzero? が美しくないと思うなら、普通
にifとかで分けるのがいいんじゃないかと思います。

もし、何かを新しく導入するなら Comparable が <> を定義してく
れるのがよいと思いますし、少なくとも、||| みたいな論理演算子
モドキの導入には僕も反対です。

-- gotoken