В ruby, когда определяется метод в корневой области, его можно вызвать из этой области:
def foo
"foo"
end
foo #=> "foo"
В любом другом контексте это не так:
class Bar
def foo
"foo"
end
foo #=> Error: No Method `foo` for class Bar
end
Какой механизм используется при настройке объекта main
(экземпляр Object
), который позволяет этому происходить?