我在几个项目中使用了Eclipse Xtext 。 我喜欢在Ecore(meta)模型上定义语法的容易程度,并为您生成的所有内容包括真棒Eclipse插件编辑器,但是我对底层EMF框架以及静态字段中的所有硬件都感到不安。 最近我遇到了Jetbrains的MPS(元编程系统) 。 它基于完全不同的哲学。 虽然Xtext用于创build基于文本的DSL为您生成parsing器(并实例化这些EObject),但是在MPS创build的语言中,直接编辑模型结构。 到目前为止,我明白了。 有没有人使用这两种DSL工具的经验来指出与他们合作的主要区别,预期用例和受众,复杂性,学习曲线(说实话,开始使用Xtext应该知道很多关于EMF的内容) ,代码生成等?