Meta Programming environment

This article was originally published in VSJ, which is now part of Developer Fusion.
JetBrains has released the Beta 2 version of its Meta Programming System, or MPS, a software development environment that started in 2003 as a research project and implements its Language Oriented Programming paradigm.

In its search for ways to help developers work more effectively and overcome the limitations of programming languages, JetBrains has developed an approach that consists of extending existing languages to create more domain-oriented ones, which enables programs to be written on a higher level and in a manner that is hopefully more natural to those domains.

The extension is achieved by allowing language constructs to be created as easily as creating classes or methods in a conventional language. This style of programming, i.e. creating specialised languages, using them to develop software, and extending them as and when required, is called Language Oriented Programming (LOP).

MPS is an environment for creating custom languages and using them to develop programs. MPS can also be used to create Domain Specific Languages (DSLs). Domain experts who are not familiar with programming can then use DSLs created with MPS to build applications. It can be used to define language typesystems, constraints and specialised editors using a generative approach: languages are described on a higher level, and MPS generates code in other languages, particularly Java.

MPS is a free product with most of its source code available under Apache 2.0 licence.

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“There are 10 types of people in the world, those who can read binary, and those who can't.”