1.Запуск секции продукции
<опер. вызова секции>::=<имя секции>()
Операция вызова и сама секция могут быть в разных файлах; связывание осуществляет линкер (компановщик).
2. Запуск продукции
<запуск продукции>::=<имя продукции>()
Предназначено для безусловного выполнения правой части продукции
3. Запуск программ или п/программ на СИ
<Запуск п/программ >::=<имя программы> <параметры>
4. <заверш. П. прогр.>::=_quit(<код возврата>)
5. <возврат из продукции>::=_return(<имя продукции>)
По умолчанию выполнение секции заполняется когда конфликтное множество пусто. Управление возвращается в точку вызова. Если аргумент присутствует возврат производится на несколько шагов назад, если в цепочке вызова такой продукции не было. Это обеспечит возможность возврата на несколько шагов назад.
6. <опер. продолжения выполнения секции>::=_continue ([< ….. >])
Данный оператор возвращает управление не в правую часть вызываемой продукции, а в секцию в которой она находится. Когда при выполнении очередной продукции встречается оператор “продолжение секции”, выполнение данной продукции прекращается, выполнение правой части вызываемой продукции также прекращается и начинается по новой выполнение секции из которой была вызвана продукция с оператором продолжение выполнение секции. По умолчанию происходит возврат на один шаг назад.
7. <опер. повтора>::=_repeat()
Встретившись в правой части продукции заставляет в цикле повторятся все вышерасположенные операторы. Чтобы цикл был не бесконечный, какой-то из вышерасположенных операторов должен иметь процедуру выхода. |