Г Р А Ф И Т — б а з и с
Приложение 2.
Элементы
языкового обеспечения визуализации деятельности
В приложении кратко описаны искусственные языки представления знаний, применяемые для описания систем различного рода. Данные описания не претендуют на языковые стандарты, в частности поэтому языковые правила в большинстве своем сформулированы нестрого; тем не менее они отражают реалии применения соответствующих языков и после усвоения могут составить основу инструментария представления профессиональных знаний.
Приложение предназначено для обучения работе с языками.
К сему прилагается | Вспомогательные языки визуализации | Ген-информодельные
Здесь даются определения для языков, используемых как вспомогательные в формализации. Языки, выделенные как основные, определяются (и рассматриваются) в основном тексте.
Содержание
Язык [конкретных ]синтаксических деревьев ([К]СД)
Диалект деревьев выражений (КСД-В)
Диалект абстрактных синтаксических деревьев (АСД)
Язык [конкретных ]синтаксических деревьев ([К]СД)
Представляет содержание информодели деятельности (программы, алгоинструкции) как исчерпывающее дерево сущностей. Достаточно широко применяется в теоретической информатике; появляются примеры применения в практике информоделирования.
Алфавит языка
Включает элементы синтаксиса модели, в т.ч. играющие роль разделителей, такие как операторные скобки (и/или представляющие их ключевые слова).
Правила языка
АСД-схема задаёт структуру синтаксиса модели деятельности целиком (напр., программы) либо для отдельного элемента согласно парадигме информоделирования (напр., класса программы — для объектной парадигмы) как дерева. Дерево имеет корень, ветви которого идут к другим узлам, а те, в свою очередь, могут иметь ветви, или быть листом дерева.
Дерево включает узлы и ветви (вершины и дуги). Каждая ветвь связывает один узел с другим. У данного узла может быть несколько выходящих ветвей, но в каждый узел ведет максимум одна ветвь. Узел, у которого нет входящей в него ветви, называется корнем. Узлы без выходящих ветвей называются листьями. Узел, не являющийся ни корнем, ни листом, называется внутренним узлом.
Непустое дерево имеет в точности один корень (структура, представленная нулём, одним или несколькими раздельными деревьями, имеющая произвольное число корней, называется лесом). Корень дерева располагается вверху и дерево «растёт» сверху вниз или слева направо.
Структура синтаксиса на КСД-языке представлена вложенными образцами с тремя видами узлов:
Корень, представляющий общую структуру, — вершина дерева, имеющая только один выход.
Внутренние узлы, которые представляют подструктуры, содержащие вложенные образцы — например, вызов метода содержит цель и имя метода.
Листья (терминалы формальной грамматики), представляющие образцы, которые не содержат последующих вложений, такие как имена классов и методов.
Корень и внутренние узлы в формально-грамматическом смысле являются нетерминалами.
Листья КСД-схемы представляют лексемы. Они подразделяются на:
Терминалы — образцы, несущие некоторую семантическую информацию. Они включают имена, называемые идентификаторами и выбираемые сочинителем для именования семантических элементов, знаки операций, такие как + и <=, появляющиеся в выражениях, и литеральные константы, обозначающие значения с самообъявлением, например, целое 34. Синтаксис литеральных констант строится так, чтобы по их записи однозначно определялся их тип.
Ограничители играют чисто синтаксическую роль и не несут никакой семантики. Они включают ключевые слова и специальные символы, например, точку и двоеточие. Они не появляются в абстрактном синтаксическом дереве, но появятся как листья при построении конкретного синтаксического дерева.
Каждый образец относится к специальному виду. Каждый такой вид образца является грамматической категорией. На КСД-схеме каждому узлу даётся имя категории. Категория может быть как терминальной, так и нетерминальной, что зависит от образцов, представляющих категорию.
Так, в объектной программе верхний узел задает класс, другие представляют имя класса, предложение «наследования», множество объявлений методов.
Категория определяет общее синтаксическое понятие. Синтаксис прогязыка определяется множеством категорий и их структурой.
Диалект деревьев выражений (КСД-В)
Предназначен для представления структуры выражений (арифметических, логических).
Схемы диалекта представляют собой ордеревья. Корнем ДВ-схемы служит результат выражения, листами — элементарные значения, узлами - подвыражения.
Схемы строятся в порядке обработки подвыражений.
Диалект абстрактных синтаксических деревьев (АСД)
Применяется для представления значимой частисущностной структуры деятельности. Достаточно широко применяется в теоретической информатике; появляются примеры применения в практике информоделирования.
4.6.4.1. Алфавит АСД-диалекта включает элементы синтаксиса модели, за исключением играющих роль разделителей, такие как операторные скобки (и/или представляющие их ключевые слова).
Соответственно листьями дерева м.б. только терминалы.
4.6.4.2. Правила организации и построения АСД-схем аналогичны таковым для КСД-схем.
АСД, также как и КСД, м.б. построены для выражений.
В начало страницы | Оглавление | Версия для печати
Copyright © Жаринов В.Н.