MPS(一种元编程语言)值得研究吗?

时间:2009-07-24 13:11:09

标签: mps

Jetbrains的另一个项目,他们的新问题跟踪器Charisma完全是用MPS编写的。概念是有用/实用的,还是太快了?

5 个答案:

答案 0 :(得分:11)

MPS不仅仅是针对Java的DSL。它实际上是语言角色。您可以将您的语言生成为MPS支持的任何其他语言。我们支持MPS 1.1中开箱即用的Java,XML和纯文本(作为最后的手段)。可能在未来的版本中,我们将提供其他语言,如javascript,css等。

MPS的一个关键功能是其他工具所没有的能力是组合语言的能力。您可以创建多个语言扩展,并以您想要的方式组合它们。例如,一个供应商可能为其数据库实现一种语言,另一个供应商可能实现财务计算的语言。他们会很好地合作,你不会有任何问题,比如含糊不清等等。

答案 1 :(得分:2)

曼。从我的角度来看,它很棒。就像类固醇上的Java,再加上DSL-s。不要只考虑DSL。完全考虑Turing-complete,包括Java开箱即用。它就像Java 8 +“Common Lisp”,类固醇,没有文本语法问题。对我而言似乎是未来。我正在投入我的心灵,思想和灵魂:)。

如果您正在寻找“超前的时间”,但仍然可以使用并且非常接触当前的技术,那就是MPS!

答案 2 :(得分:2)

我相信MPS非常值得研究。该工具是开源的,非常强大。在MPS中实现的思想非常强大,并且解决了自编程语言开始以来我们一直遇到的许多挑战(最重要的是,语言构成)。文档的质量对初学者来说是一个挑战,但你现在也可以阅读这本新书:http://books.campagnelab.org/(免责声明:我是本书的作者,但我不是MPS的作者)。

答案 3 :(得分:1)

这不是“太快”的情况,而是这种开发方法本身具有相当大的挑战性。 MPS的成本/效益比(以及成本I表示传播时间)在很大程度上取决于您应用它的项目类型。如果您有一个可以从DSL中获益的域名(例如,对我来说,它是项目管理),那就去吧!

答案 4 :(得分:-1)

它似乎是一个用于Java的DSL。为什么不亲自调查一下?如果它只是生成Java源文件,我认为没有理由不给它一个破解,如果它是你感兴趣的东西而且不急于项目。