Нет.
Переменные слишком специфичны для передачи в глобальном пространстве имен. Вместо этого спрячьте их внутри статических функций / классов, которые могут делать с ними магические вещи во время выполнения (или вызывать другие целиком).
Подумайте, что произойдет, если IO может периодически менять состояние или если ему нужно какое-то время блокировать (как это делают многие сокеты).
Рассмотрим, что произойдет, если один и тот же блок кода будет включен несколько раз. Экземпляр переменной также дублируется?
Подумайте, что произойдет, если вы захотите иметь версию 2 с той же переменной. Что делать, если вы хотите изменить его интерфейс? Вам нужно изменить весь код, который ссылается на него?
Имеет ли смысл заражать весь код, использующий переменную, со знанием того, как она может испортиться?