豊福です。

  array.c 見て気づいたのですが Fixnum と String の
比較は組み込みなので <=> を定義し直しても効かないの
ですね。

    x = [3,1,4,2]
    p 1<=>2
    p x.sort
    class Fixnum
      alias cmp <=>
      def <=>(b)
        b.cmp self # 逆にした
      end
    end
    p 1<=>2
    p x.sort

結果
    -1
    [1, 2, 3, 4]
    1
    [1, 2, 3, 4]
---
                        豊福
                        toyofuku / juice.or.jp