-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi. When I do - --------------------------------------------------------------------------- class Foo ~ def bar ~ puts "bar!" ~ end end - --------------------------------------------------------------------------- and then - --------------------------------------------------------------------------- class Foo ~ def another_bar ~ puts "another bar!" ~ end end - --------------------------------------------------------------------------- am I adding another_bar method to the Foo class instance or on it's metaclass? I was reading http://www.rubygarden.org/ruby?GavinSinclair/MetaClassDiscussion "Ruby classes are themselves objects, being instances of the metaclass ~ Class. . . . The class Object is at the root of the hierarchy. . . . ~ Object itself is the only object without a superclass." and then http://www.ruby-talk.org/cgi-bin/scat.rb/ruby/ruby-talk/40537 where Matz says that ">I've been trying to understand metaclasses You don't have to, because there's no such a thing in Ruby." and http://www.ruby-talk.org/cgi-bin/scat.rb/ruby/ruby-talk/40548 where Matz call them as meta-objects. So, seems that there is some meta(class|object) around there (specially if you think about the graph here http://www.rubygarden.org/ruby?ClassInstanceVariables, where explain the class methods), but I'm curious of when adding a new method as described above, where it is added, on the metaclass or on the class instance, to reflect the new method on all current and future instances of Foo. Thanks! - ---------------------------- EustáÒuio "TaQ" Rangel eustaquiorangel / yahoo.com http://beam.to/taq UsuáÓio GNU/Linux no. 224050 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.7 (GNU/Linux) iD8DBQFCyV2Wb6UiZnhJiLsRAoQxAJ43dBExQqvejAkYhPDhKNxLWeIBkwCfaEiB IW2O52Q3+r7EMd7hg1Mbrc4= =tSqS -----END PGP SIGNATURE-----