Quais são as principais diferenças entre o MPS do Jetbrains e o Eclipse Xtext?

Eu tenho usadoEclipse Xtext em vários projetos. Adorei a facilidade de definir uma gramática sobre um modelo Ecore (meta) e deixar tudo ser gerado para você, incluindo o incrível editor de plug-in do Eclipse, mas fiquei bastante desconfortável com o subjacenteEstrutura EMF com tudo conectado em campos estáticos.

Ultimamente me deparei com Jetbrains 'MPS (Meta Programming System). É baseado em uma filosofia completamente diferente. Enquanto o Xtext é para criar DSLs baseadas em texto, gerando um analisador para você (e instanciando esses EObjects), na linguagem criada pelo MPS, é possível editar diretamente a estrutura do modelo subjacente. Até agora eu entendi.

Alguém tem experiência com as duas ferramentas DSL para apontar as principais diferenças em termos de trabalho com elas, casos de uso pretendidos e público, complexidade, curva de aprendizado (para ser honesto, para começar a usar o Xtext, é necessário conhecer bastante as entranhas da EMF) , geração de código etc?

questionAnswers(3)

yourAnswerToTheQuestion