bparanj / gmail.com wrote: > What is the purpose of singleton method? Why is singleton method > defined on individual object instead of a class? TIA class Person def initialize( name ) @name = name end def do_the_hustle puts %Q|#@name says, "doop dee doop de doop dee doop doo ..."| end def electric_slide puts %Q|#@name says, "It's electric!"| end def dance do_the_hustle end end bob = Person.new( "Bob" ) jim = Person.new( "Jim" ) janice = Person.new( "Janice" ) def janice.dance electric_slide end crowd = [ bob, jim, janice ] crowd.each{ |person| person.dance } #=> Bob says, "doop dee doop de doop dee doop doo ..." #=> Jim says, "doop dee doop de doop dee doop doo ..." #=> Janice says, "It's electric!" With singleton methods, you can change the way a single object responds to an event (or add unique functionality) without having to create a whole new subclass just for that object.