Один из разработчиков Meta Programming System про нее и рассказывал.
Что было до этого для DSL:
- предметно-ориентированные конструкции в стандартных языках (например, synchronized в Java)
- языковые расширения (проблемы совместимости друг с другом и поддержки IDE)
В отличие от языковых расширений MPS работает на уровне абстрактного синтаксического дерева, а не текстовой грамматики, чем устраняет проблему совместимости. Редактор свой, проекционный (работает с АСТ, который проецируется в текст). Привыкание — 2 недели.