Главная
Общая информация
Общая информация

Элементы

Базовый элемент PARSEQ - PQNode (Node), встроенный в иерархическую структуру.

Node может быть двух вариантов выполнения seq или par.
На данный момент могут быть использованы Nodes только seq, что означает последовательное выполнение предложений. Запись вида:

seq {
  
}
определят Node.

В Node могут входить (или не входить) другие элементы: meta, functions, channels, data, childs, body, out.

Типичная структура Node:

seq {
  meta {
    t : P1 ! name;
    t : XXX_ppp ! uname;
    t : Z_ABC_LLL ! code;
    t : 123 ! id;
    t : 3 ! type;
  }
  data {
    t : 100 ! a;
    t : 0.09 ! cn;
  }
  childs {
    // пошли другие Nodes
  }
  body {
    90<a<120 : 2 ! v;
    else : 0 ! v;
  }
}

root

root - корневой Node в PARSEQ, перед ним нет символа seq или par.
В нем скорее всего будет елемент out - вывод информации после выполнения расчета.
Также в нем будут определены глобальные функции и каналы.

PQSystem

PQSystem - система расчета (включает интерпретация языка), обязательно включает в себя элемент root.

Фазы интерпретации

translate - выполняет PARSEQ по данным из meta по символу trans.
Пример:
t : trans(иначе) ! else;
Это означает, что на этой фазе символ "иначе" будет переведен в символ "else".

prepare - PARSEQ разделяет предложения, а также разделяет части предложений на Условие, Выражение, Символы. Расчет на этой фазе не производится.

eval - фаза выполнения, обычно декларируется в out, PARSEQ рекурсивно выполняет body для всех Nodes, начиная от root.
Для выполнения Условий и Выражений используется Lex.