Назначение: Система МТ (метатранслятор) предназначена для автоматизации разработки трансляторов:
• с проблемно-ориентированных языков;
• с непроцедурных языков ППП;
• с информационных языков;
• с языков машинной трафики и т.д.
Результатом трансляции программы на проблемно-ориентированном языке может быть:
1) последовательность инструкций любого языка программирования;
2) программа управления ППП;
3) строка, предназначенная для обработки текстовыми процессорами, или генератором ввода-вывода и др.;
4) машинная программа в формате объектного модуля;
5) заполнение баз данных, печать таблиц, генерация конфигурации программных комплексов.
Система МТ основана на развитии атрибутных схем, хорошо изученных в отечественной и зарубежной литературе. Классические атрибуты схемы существенно расширены с целью получения более простого описания языков со сложной семантикой.
Пользователь системы - разработчик информационных систем или разработчик языка.
Для получения транслятора с проблемно-ориентированного языка необходимо задать информацию о синтаксисе и семантике языка на метаязыках системы МТ. Мета синтаксический язык – нормальная форма Бэкуса-Наура. Мета семантический язык позволяет задать любое возможное соответствие между конструкциями входного выходного языков. Предлагается наглядный способ описания синтаксиса языка вместе с семантикой в виде нагруженного графа.
Процесс работы системы МТ заключается в выполнении следующих операций:
1) ввод синтаксис;
2) ввод семантики;
3) двухпроводная трансляция.
В состав МТ входят четыре программных процессора (см. рис.11).
Как видно из рис.11, разработка транслятора с конкретного проблемно-ориентированного языка сводится к составлению синтаксической и семантической таблиц. Процесс составления таблиц автоматизирован и выполняется процессорами ввода синтаксиса и семантики. Трансляция программы с любого проблемно-ориентированного языка выполняется инвариантными процессорами разбора и сборки по таблицам синтаксиса и семантики.