Это продолжение этого исходного вопроса SO: Использование "::" вместо "модуля..." для пространства имен Ruby
В исходном SO-вопросе вот представленный сценарий, который у меня все еще не понятен:
FOO = 123
module Foo
FOO = 555
end
module Foo
class Bar
def baz
puts FOO
end
end
end
class Foo::Bar
def glorf
puts FOO
end
end
puts Foo::Bar.new.baz # -> 555
puts Foo::Bar.new.glorf # -> 123
Может ли кто-нибудь объяснить, почему первый вызов возвращает 555 и почему второй вызов возвращает 123?