From: ts Date: 2003-12-15T01:21:31+09:00 Subject: Re: inplace assignment >>>>> "D" == David A Black writes: D> Yes, you just have to make sure the class exists in the first place D> :-) But I can't imagine what good it would do. I'm not even sure in D> what sense it would be "recursive"; I think all it does is duplicate D> the method search path needlessly. no, it's not recursive. ruby just replace the constant with the new class (and you have a message "already initialized constant ...") For example svg% cat b.rb #!/usr/bin/ruby class A def a puts "A#a" end end class A < A def a puts "A#a1" super end end A.new.a p A.ancestors A.ancestors[1].new.a svg% svg% b.rb ./b.rb:8: warning: already initialized constant A A#a1 A#a [A, A, Object, Kernel] A#a svg% Guy Decoux