From: Brian Candler Date: 2010-01-24T05:46:11+09:00 Subject: Rules for constant lookup Can somebody point me to an *accurate* list of the rules for constant lookup? I've just been caught out by the following. ==> works.rb <== module Foo class Bar; end class Baz def initialize @bar = Bar.new end end end Foo::Baz.new ==> broken.rb <== module Foo class Bar; end end class Foo::Baz def initialize @bar = Bar.new end end Foo::Baz.new In both cases there is a module Foo, a class Foo::Bar and a class Foo::Baz. The only difference between the two is that one uses "module Foo; class Baz" and the second uses "class Foo::Baz" I thought the two were identical if module Foo already exists, but clearly I was mistaken. Regards, Brian. -- Posted via http://www.ruby-forum.com/.