Думаю, пока что оставлю ее глобальной. Проблема вот в чем: если ее передавать параметром в обработчики баттонов (для выполнения операций), то после выполнения снаружи функции она не изменится, т.к. внутри ф-ции я переопределяю ontology (присваивая ссылку на новую онтологию или доставая старую из бэкапа), и т.о. снаружи остается ссылка на старую онтологию. Можно это решить хранением всего стека онтологий вместо текущей, тогда ссылка на сам стек не похерится внутри/снаружи функции.
Думаю, пока что оставлю ее глобальной. Проблема вот в чем: если ее передавать параметром в обработчики баттонов (для выполнения операций), то после выполнения снаружи функции она не изменится, т.к. внутри ф-ции я переопределяю ontology (присваивая ссылку на новую онтологию или доставая старую из бэкапа), и т.о. снаружи остается ссылка на старую онтологию. Можно это решить хранением всего стека онтологий вместо текущей, тогда ссылка на сам стек не похерится внутри/снаружи функции.