Обзор средств разработки доменно-специфичных языков 7




НазваниеОбзор средств разработки доменно-специфичных языков 7
страница1/8
Дата публикации24.03.2013
Размер0.53 Mb.
ТипДокументы
odtdocs.ru > Информатика > Документы
  1   2   3   4   5   6   7   8




Оглавление

Введение 5

Глава 1. ОБЗОР Средств разработки доменно-специфичных языков 7

1.1. Разнообразие синтаксических систем 7

1.2. Типичная архитектура транслятора 8

1.2.1. Семантический анализ 8

1.3. Средства автоматизации построения текстового синтаксиса 10

1.3.1. Средства общего назначения 11

1.3.2. GUIDE/Gymnast 11

1.3.3. Open Architecture Ware 12

1.3.4. TCS 13

1.4. Постановка задачи 13

1.5. Выводы 14

Глава 2. Преобразование AST в целевую модель 16

2.1. Пример доменного языка – Animate 16

2.2. Структура AST 19

2.2.1. Текстовые ссылки 20

2.2.2. Чисто синтаксические и чисто семантические классы 21

2.2.3. Наследование в метамодели AST 22

2.3. Модель соответствия между AST и целевой метамоделью 23

2.3.1. Соответствие для языка Animate 25

2.4. Структура трансформации 26

2.4.1. Непосредственное отображение 26

2.4.2. Семантический анализатор 27

2.4.3. Хранилище созданных объектов 28

2.5. Взаимодействие с семантическим анализатором 28

2.5.1. Отложенное разрешение ссылок 28

2.5.2. Области видимости 30

2.5.3. Зависимости между ссылками 31

2.6. Обратимость трансформации 32

2.7. Ограничения, накладываемые описанной структурой 32

2.8. Выводы 33

^ Глава 3. Автоматическое построение трансформации AST в целевую модель 34

3.1. Алгоритм установления соответствия, основанный на конвенциях 34

3.2. Язык для трансформации метамоделей - ASTrans 36

3.2.1. Преобразование существующих классов 37

3.2.2. Исключение класса из рассмотрения 38

3.2.3. Создание чисто синтаксических классов 38

3.2.4. Описания классов 38

3.2.5. Изменение иерархии наследования 39

3.2.6. Трансляция типов ссылок 40

3.2.7. Модель отображения как журнал трансформации 40

3.2.8. Ограничения, накладываемые языком ASTrans 41

3.3. Генерация кода 41

3.3.1. Архитектура генератора 42

3.3.2. Модель трансформации 42

3.3.3. Обратные трансформации 44

3.3.4. Реализация непосредственного отображения 45

3.3.5. Отложенное и немедленное разрешение ссылок 45

3.3.6. Дополнительная информация 46

3.3.7. Построение модели трансформации по модели соответствия 47

3.4. Выводы 47

^ Глава 4. Использование языка astrans для построения его синтаксиса 49

4.1. Описание целевой метамодели 49

4.2. Описание структуры AST 51

4.3. Трансформация целевой метамодели в структуру классов AST 53

4.4. Трансформация AST в целевую модель 54

4.5. Выводы 55

Заключение 57

Литература 59

Приложение 1. Трансформация языка ASTrans, Построенная автоматически 62



Введение


Доменно-специфичные (или просто доменные) языки (Domain Specific Languages, [0], [0]), называемые также специализированными языками предметной области [0], определяются как языки, привязанные к определенной предметной области, разработанные специально для нее и позволяющие выражать понятия, связанные с этой областью, эффективнее чем языки общего назначения [0]. (Несколько важных концептуальных отличий доменных языков от языков общего назначения приводятся в [0].) Такие языки используются для работы на высоком уровне абстракции, что облегчает работу системных архитекторов и специалистов в предметной области, привлеченных к разработке ПО, но не являющихся специалистами по программированию.

Использование доменно-специфичных языков, наравне с использованием моделей, является одним из ключевых моментов в таких методологиях как: MDD (Model Driven Development, [0], [0]), MDE (Model Driven Engineering, [0], [0]) и MDA (Model Driven Architecture, [0], [0]).

Эти методологии объединяет общая идея: очень большое количество артефактов, создаваемых в процессе разработки ПО, можно генерировать автоматически. В качестве входных данных для генераторов используются модели – формализованные объектно-ориентированные структуры, регламентируемые метамоделями [0], [0]. К моделям применяются трансформации, строящие по ним другие модели [0] или текст [0].

Применительно к таким методологиям, доменно-специфичные языки, как правило, используются для того, чтобы облегчить ввод тех или иных моделей [0], [0]. Таким образом, назначение языка полностью определяется метамоделью, экземпляр которой он описывает. Будем называть эту метамодель целевой метамоделью данного доменного языка. Сам доменный язык целесообразно рассматривать как множество всех экземпляров целевой метамодели.

Синтаксис доменного языка играет очень большую роль, обеспечивая простоту использования и понятность.

Целью настоящей работы является улучшение существующих достижений в области автоматизации построения текстового синтаксиса доменных языков.

Основные задачи, решаемые в работе, включают

  • построение формального описания трансформаций абстрактных синтаксических деревьев (AST, [0]) в целевые модели,

  • разработку языка, позволяющего трансформировать структуру классов целевой метамодели в структуру классов AST,

  • разработку генератора кода, позволяющего автоматически строить трансформации по их описаниям.

Использование результатов данной работы в дополнение к существующим средствам автоматизации существенно облегчает разработку текстового синтаксиса.
  1   2   3   4   5   6   7   8

Добавить документ в свой блог или на сайт

Похожие:

Обзор средств разработки и размещения проектов asp. Net
Для разработки данного пакета программ был выбран язык C#. Net. Язык очень схож с современными языками программирования, от которых...

Среды визуального моде­лирования для преподавания
Обоснова­на целесообразность создания своих визуальных языков. Предложен краткий обзор доступных средств с акцентом на средства метамодели­рования,...

И. М. Балонов и ученик 11 класса моу«сош №22 с углубленным изучением иностранных языков»
В частности в моу сош №22 г. Перми был поставлен комплект дистрибутивов операционной системы AltLinux. При работе с этой операционной...

Графические языки высокого уровня
Синтаксические расширения алгоритмических языков. Способы реализации таких языков

Технологии обработки языковых данных и документирование языков
Документирование малых языков как одна из главных задач полевой лингвистики (Week 1: Feb 12)

План: Введение Задание на разработку Обзор современных ajax-фреймворков
Целью разработки является создание конкурентноспособного редактора таможенных документов, взаимодействующего с системой Электронного...

План: Введение Задание на разработку Обзор современных ajax-фреймворков
Целью разработки является создание конкурентноспособного редактора таможенных документов, взаимодействующего с системой Электронного...

Краткое описание языка Краткая история языка Groovy
Получить представление о языке программирования на примере которого будут изучаться базовые концепции объектно-ориентированных языков...

Начала программирования в OpenOffice org Программирование в uno
Другие порты – на стадии разработки. Через компонентную технология ms com uno доступно для многих других языков, в OpenOffice org...

Введение в Python и Eric
«классическим» способом (т е в духе языков basic или Pascal, традиционно используемых для обучения реализации алгоритмов) приведена...

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
odtdocs.ru
Главная страница