るびきちです。

そろそろ特異クラスを得るメソッドを導入しても良いのではないでしょうか?
毎回「(class << x; self; end)」と書くのは美しくないですから。

名前はそのまま「Object#singleton_class」がいいと思います。
そして別名「Object#eigenclass」、「Object#metaclass」も欲しいです。

class Object
  def singleton_class
    class << self; self; end
  end
  alias eigenclass singleton_class
  alias metaclass singleton_class
end

x = "a"
class << x; self; end           # => #<Class:#<String:0xb7b2c700>>
x.singleton_class               # => #<Class:#<String:0xb7b2c700>>
x.eigenclass                    # => #<Class:#<String:0xb7b2c700>>
x.metaclass                     # => #<Class:#<String:0xb7b2c700>>

--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/