クラスの名前はただの定数でしかないということは

その定数を適当な変数にコピーして,その変数はnewを使えたりするってことだ.

class Hoge
  def hello
    puts "hello"
  end
end

a = Hoge.new
a.hello
=> hello
p Hoge
=> Hoge

hoge = Hoge.dup
b = hoge.new
b.hello
=> hello
p hoge
=> #<Class:0x4998c8>

fuga = Hoge
c = fuga.new
c.hello
=> hello
p fuga
=> Hoge

ふと思ったもので.何かに使えないかのぉ.dupしたときとそのままコピーしたときとで,pの挙動が変わるのは面白いと思った.dupしたときなんかは,「コイツはClassクラスのインスタンスなんだぜ!」と主張してたりして.