>>>>> "C" == Chris Pine <nemo / hellotree.com> writes:

C> Also, a question:  what's the difference between a class's singleton class
C> and a metaclass?

 You can speak about singleton classes, you can't about metaclass :-)))

 See "Meta-Classes a conspiracy of silence?"

C>                   If I'm not mistaken, these are the same in Ruby, but I
C> mean conceptually:  what is a metaclass?

 Seriously, if I'm remember correctly, squeak will give you this result

   1 class -> SmallInteger
   1 class class -> SmallInteger class
   1 class class class -> Metaclass
   1 class class class class -> Metaclass class
   1 class class class class class -> Metaclass
   1 class class class class class class -> Metaclass class
   1 class class class class class class class -> Metaclass
 
 now try the same with ruby

  1.class  # Fixnum
  1.class.class # Class
  1.class.class.class # Class


Guy Decoux