JetBrains, maker of developer tools such as the IntelliJ IDEA integrated development environment for Java developers, has announced the 1.0 release of the company’s new conceptual software development environment-Meta Programming System, or MPS.
MPS is designed to create new languages or language extensions, including programming languages, data languages or DSLs (domain-specific languages), the company said. MPS also allows composing languages with each other. For example, developers can add new constructs to Java, or they can create a language specific to their domain and embed Java code inside it.
MPS is a professional language workbench and IDE for extending existing languages and using them to develop software. Moreover, by using MPS, and DSLs created with its help, domain experts can solve their domain-specific tasks easily, even if they are not familiar with programming, JetBrains said.
“MPS has come a long way since the original concept back in 2003 and is now a powerful, mature software tool that paints the future of software development,” said Sergey Dmitriev, JetBrains CEO and creator of the MPS concept. “We’ve always taken pride in using our own software products, and we’re already using MPS as a development platform for several of our latest products. One of them, a Web-based issue tracker code-named Charisma, is already available for early access preview.”
JetBrains delivered a beta version of MPS last December and released the 1.0 version on July 23.
MPS provides advanced facilities for defining language type systems, constraints, specialized projectional editors and generators. Utilizing the generative approach, languages in MPS are described on a higher level, after which MPS generates compilable code in other languages. Dmitriev said a key advantage of MPS is that languages are composable: They can be easily combined with each other, which promotes reuse of languages.
JetBrains officials said all MPS code is licensed under the Apache 2.0 open-source license. However, the company maintains a non-open-source component, which is called JetBrains IDE Framework. Its license allows developers to freely use it in MPS’ derivatives, Dmitriev said.