From: Tanaka Akira Date: 2007-12-24T09:05:29+09:00 Subject: [ruby-dev:32693] String#== is not transitive String#== が推移律を満たしていない (つまり同値関係でない) の はよろしくないんじゃないでしょうか。 % ./ruby -ve ' u = "\xe0\xa0\xa1".force_encoding("utf-8") e = "\xe0\xa0\xa1".force_encoding("euc-jp") s = "\xe0\xa0\xa1".force_encoding("sjis") p u == e p e == s p u == s ' ruby 1.9.0 (2007-12-24 revision 0) [i686-linux] true true false u と e が同じで e と s が同じなのに、u と s が異なるというの は == に対する期待に反します。 -- [田中 哲][たなか あきら][Tanaka Akira]