Язык программирования Stratego / XT - PullRequest
3 голосов
/ 08 мая 2009

Кто-нибудь знает что-нибудь о Stratego / XT Языке программирования? Для чего это? Есть хорошие и / или плохие переживания с этим? Любой реальный живой пример?

Большое спасибо.

Ответы [ 3 ]

7 голосов
/ 13 декабря 2009

Stratego / XT - это язык и набор инструментов для преобразования программ, основанный на переписывании терминов с программируемыми стратегиями переписывания.

Документацию и научные статьи о языке и наборе инструментов можно найти по адресу http://strategoxt.org.

Реальным приложением Stratego / XT является WebDSL (webdsl.org), предметно-ориентированный язык для разработки веб-приложений, который, в свою очередь, использовался для построения researchr.org.

Stratego / XT также является основой для набора инструментов Spoofax / IMP для создания плагинов Eclipse IDE для пользовательских (доменных) языков (см. Страницу Spoofax-IMP на сайте Stratego).

1 голос
/ 22 февраля 2010

Если вас интересует Stratego (или TXL), вас, вероятно, заинтересует DMS Software Reengineering Toolkit .

DMS - это полнофункциональная система преобразования программ, которая по своей сути предлагает переписывание от источника к источнику, такое как Stratego и TXL. И вы можете использовать это для реализации собственного пользовательского DSL-компилятора или механизма массового изменения исходного кода.

Если DMS отличается тем, что его можно получить с помощью проверенных интерфейсом для Java, C #, C ++, C и COBOL, большинство из которых будет анализировать ваш исходный код, создавать AST и таблицы символов, а также для из них обеспечивают поток управления, поток данных и точки на анализаторы.
Инфраструктура анализа является общей и может использоваться также в ваших DSL.

Сравнение этих систем можно найти на веб-сайте.

1 голос
/ 13 июля 2009

Попробуйте TXL . Это легче начать и делает аналогичные работы. На его сайте есть примеры.

...