Я обнаружил, что в консоли Rascal после импорта модуля, который содержит определения глобальных переменных, эти глобальные переменные недоступны. Доступны только глобальные имена функций. Например, в следующем коде после импорта Foo
в консоли я могу позвонить x()
, чтобы получить 1
, но разыменование x
дает мне несвязанную переменную ошибку. Зачем?Глобальная переменная в модуле, недоступном после импорта модуля
module Foo
int x = 1;
int x() = 1;
Полностью удалять глобальные переменные звучит разумно. Но было бы неплохо иметь возможность определять глобальные константы. – day
согласен, глобальные константы безвредны и полезны – jurgenv