Все в Ruby происходит в контексте некоторого объекта. Объект на верхнем уровне называется «основным». Это в основном экземпляр Object со специальным свойством, которое любые методы, определенные там, добавляются как методы экземпляра Object (поэтому они доступны везде).
Таким образом, мы можем сделать скрипт, состоящий полностью из:
puts object_id
@a = 'Look, I have instance variables!'
puts @a
и будет напечатано «105640» и «Смотри, у меня есть переменные экземпляра!».
Это не то, что вам обычно нужно беспокоиться, но оно есть.