Oops... my bad. Must have copied from the wrong irb session. The following is still true: irb(main):001:0> osc = class << Object; self; end #<Class:Object> irb(main):002:0> osc.class Class irb(main):003:0> osc.superclass Class ...but the rest was not. Sorry, Chris