Реализация статической трассировки кода для поиска возможных ошибок

\Core\Flow\Trace\Tracert - точка входа для трассирования кода
инициализирует область видимости (scope), которая хранит перемененные (класс Variable) и их вычисленные типы данных
каждая инструкция (или группа инструкций) языка обабатывается своим оператором-классом (IOperator)
при необходимости, скоуп "раздваивается", например когда идет трассировка условного ветвления
и мы имеем 2 паралельных состояния программы - когда условие истинно ,и когда ложно