Child pages
  • MPS user guide for DSL users
Skip to end of metadata
Go to start of metadata

Languages created with MPS are typically packaged together with their tooling into dedicated IDEs (Integrated Development Environment). These IDEs are then used by the end users - domain experts, who create models using the supplied languages. Since all the language design functionality and unrelated languages have been removed, such IDEs offer less clutter, greater focus and better performance in comparison with using full-blown MPS. Administrator consoles, business rule editors or other similar types of applications are examples of the domains that these dedicated IDEs typically aim at.

This page provides the fundamental knowledge that the users of such single-purpose IDEs need in order to operate the tools efficiently.

Before you start

Other user guides


Setting things up

In order to program in MPS-based languages you need to start up MPS or a standalone IDE that was built specificaly for these languages. These dedicated IDEs are essentially cut-down variants of MPS itself, which do not distract a DSL user with unrelated languages and language-design capabilities.

MPS-based IDEs are typically standalone Java applications with their own installation procedure. Please follow the instructions provided by the IDE vendor to properly setup the tool and run it.


Just like MPS itself, standalone MPS-based IDEs can be configured and customized using the Settings dialog, which you can invoke through the menu, a toolbar or using a keyboard shortcut (Control + Alt + S / Cmd + ,). Although the actual contents of the dialog may differ among different applications, they typically offer some basic settings for the editor, generator and perhaps VCS. Some may also allow to manage plugins, enable and disable individual languages or integrate third-party tools.

Please refer to the documentation of your particular tool for more details on its configuration.

Editor specialities

The clever projectional editor in MPS is slightly different from what you may be used to. Since the editor is the most visible element, which you'll get to know as soon as you start interacting with your code, we prepared a short introductory document - Comanding the editor.

Resolving difficulties, understanding reported errors

The Finding your way out of a problem page should give you a hand whenever you run into a problem.

VCS integration

Being projectional in the world that has been built on text brings about some challenges. Integration with VCS systems is one of them. In order to be able to standard VCS systems, such as Subversion or Git, MPS provides an add-on that hooks into the important VCS events and gives you a projectional way to merge code and resolve conflicts. With this add-on installed your MPS-based IDE will give you the experience you expect from a VCS for your projectional code.

Check out the details at the Version Control page.


Did not find the answers? 
Post your questions to our discussion forum 

  • No labels