Tefkat

редактировать

Tefkat - это язык преобразования модели и преобразование модели двигатель. Язык основан на F-логике и теории программ стратифицированной логики. Движок представляет собой подключаемый модуль Eclipse для Eclipse Modeling Framework (EMF).

Содержание
  • 1 История
  • 2 Краткое описание
  • 3 Конкретный синтаксис
  • 4 Соответствие
  • 5 См. Также
  • 6 Ссылки
История

Tefkat был одним из подпроектов проекта Pegamento в Центре технологий распределенных систем (DSTC), Австралия. Несмотря на то, что проект уже был в стадии реализации, наиболее активное исследование имело место для представления ответа на OMG MOF 2.0 Queries / Views / Transformations Request for Предложения.

Tefkat имел открытый исходный код до закрытия DSTC в июне 2006 года.

Краткое описание

Tefkat определяет отображение набора исходных метамоделей на набор целевых метамодели. Преобразование Tefkat состоит из правил, шаблонов и шаблонов. Правила содержат исходный и целевой термин. Шаблоны просто называются составными исходными терминами, а шаблоны просто называются составными целевыми терминами. Эти элементы основаны на F-логике и чисто логическом программировании, однако отсутствие функциональных символов означает значительное снижение сложности.

Tefkat имеет еще два важных языковых элемента: отслеживание и инъекции. Отслеживание позволяет сохранять произвольные отношения в модели трассировки. Инъекции позволяют определять идентичность целевых объектов с помощью функционального символа. Таким образом, инъекции похожи (но более мощны) на ключи QVT, которые определяют идентичность целевого объекта как функцию его типа и некоторых его свойств.

Декларативная семантика преобразования Tefkat - это идеальная модель трасс и целей, которая удовлетворяет всем правилам. Более императивная семантика преобразования Tefkat - повторяющаяся наименьшая фиксированная точка непосредственного следствия каждого правила. Из-за стратификации эта семантика эквивалентна и однозначна. Tefkat не использует явный вызов правил; все (не абстрактные) правила срабатывают независимо от всех остальных, однако правила могут быть слабо связаны с помощью отслеживания, внедрения, расширения правил и / или замены правил.

Конкретный синтаксис

Tefkat имеет конкретный синтаксис, похожий на SQL, разработанный для лаконичной передачи намерений каждого правила, шаблона или шаблона.

ПРАВИЛО ClassToTable FORALL Class c {name: n; } СОЗДАТЬ таблицу t {name: n; };
Соответствие

Язык Tefkat определен в терминах (E) MOF 2.0, однако движок реализован в терминах Ecore, метаметамодели, подобной EMOF, в центре EMF. Этот язык очень похож на пакет Relations QVT, однако не является строго совместимым.

См. Также
Ссылки
Последняя правка сделана 2021-06-09 12:13:01
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте