From: Wes Gamble Date: 2006-05-17T07:18:57+09:00 Subject: Need help understanding namespace rules-modules and classes I'm having a namespace collision and I think I need some basic understanding of how Ruby is managing namespaces. I am 99% sure I know which namespaces are colliding, but I'm not completely clear on how to resolve it. I have Module A (rubyful_soup.rb) which defines class Tag. It appears that this Tag class is not defined inside of a module. I have Module B (node.rb) which defines class Tag. It appears that this Tag class is defined inside of a module called HTML. However, I seem to be unable to avoid a "wrong number of arguments" error when an attempt is made to instantiate Tag in node.rb, and I am pretty sure that Tag from rubyful_soup.rb is interfering. Here are my questions: 1) If I define a class _inside_ of a module, and then address that class by module_name::class_name, should that ensure that I will get that class? Is the namespace actually defined by the module names or not? 2) Assuming that module::class is the correct way to address the class, then _within_ a module, would I need to address my classes using module::class consistently or can I just use the class name in the module? Can someone give me an example of how I could address having two different classes of the same name in two different modules? I'm just not understanding what the equivalent of the Java package structure is in Ruby. Thanks, Wes -- Posted via http://www.ruby-forum.com/.