Are class method and singleton method doing the same or different? Here is an example.
class C def self.classmethod puts \"class method #{self}\" end end
In ruby class is an object as well. So, in your example classmethod is a singleton method for object C and singletonmethod is singleton method for object c.
classmethod
C
singletonmethod
c
I highly recommend book "Metaprogramming Ruby" by Paolo Perrotta.