Там компилятор и интерпретатор выполняют свои роли по делению кода на токены и образования абстрактного синтаксического дерева. Я только начал в это въезжать. У программы получается есть глобальное состояние. А вот это прибавление ещё одной функции это прямое мутирование как splice или иммутабельное как slice, если можно такое сравнение привести?