Работа с функциями
Функция — это именованный блок программы, который можно неоднократно вызывать внутри программы. Функции позволяют упростить программу, убрав повторяющиеся или сложные подпрограммы в отдельные блоки. Функция получает на вход аргументы и возвращает по окончанию выполнения результат.

Как и любая функция, функция в Sync работает практически аналогично, однако она позволяет выводить данные в любое требуемое время, как будто это обычный узел (например, цикл работает похожим образом).
Определение функции
Функция определяется двумя узлами и запускается внутри программы третьим.

Запускающий функцию узел выглядит как обычный узел, а определяющие выглядят как обратные к нему. Входной узел имеет выходы, которые являются входами функции. Следовательно, если попытаться разложить функцию, то все подключенные ко входу узлы нужно подключить так, чтоб они были подключены ко всем узлам подключенным к входному определяющему узлу. Аналогично и для выходов функции.

Использование функции
Использовать функцию можно в любом виде, даже внутри другой функции, но рекурсия в данной версии не поддерживается.
Область видимости
Функция определяет свою область видимости, что позволяет исключить изменение данных вне функции во время её работы. Каждый отдельный узел функции имеет отдельную область видимость.

Создание функции
Сгенерировать функцию можно по инструкции, описание узла должно быть к запускающему узлу функции. Описывать входную и выходную конструкции не нужно, программа автоматически сделает это и сохранит все в библиотеку.