Почему нельзя загрузить переменные из другого файла?

К примеру, файл file1 содержит:

  var1 = 99

и загружается из какого-то другого файла:

  require 'file1'
  puts var1        #=> error: 'var1' not defined

Ошибка возникает по той причине, что load и require помещают локальные переменные из загружаемых файлов в отдельные анонимные пространства имен. Это сделано для того, чтобы избежать загрязнения глобального пространства имен.

Вход для пользователей