Обе из тех платформ имеют дело с метамоделью:
У Вас есть пример практического применения на основе преобразования метамодели с теми инструментами?
Они различаются с точки зрения документа, хранящего метамодель .
Что касается XText , , эта статья иллюстрирует одно использование, когда дело доходит до создания ваших собственных языков программирования и предметно-ориентированных языков (DSL).
Когда у вас есть язык, вы хотите его обработать, а это обычно означает преобразование вашей модели в другое представление.
Средство, отвечающее за это преобразование, называется генератором и состоит из набора шаблонов преобразований (например,XP и
) и некоторого кода, выполняющего их.В некоторых случаях модель считывается, и преобразования применяются для создания кода.
Пример такого преобразования модели :
dot3zest , который поставляется с интерпретатором DOT to Zest (который теперь использует API переключения Xtext, созданный для грамматики DOT), поддерживает ad-hoc DOT определения краев.
Что касается MPS, у вас есть серия практических примеров ,
как это генерация кода для GPL, например Java, C #, C ++ или XML :