One month until the MPS event in Munich!

In exactly one month we will have our event: “Everything you need to know about JetBrains MPS” in Munich. During the event, our speakers will give you some real-life examples and insight into DSLs that are being used effectively within many different industries.

The event is completely free but space is limited and so registration is required. Register here.

Have a great day!

Your JetBrains MPS Team

The Drive to Develop

Screen Shot 2018-03-19 at 12.03.33

Posted in Events | Tagged , , , , , , | 2 Comments

The Feature-freeze version is ready

This new version comes with two main features: the inclusion of transformation menu for the property/reference and SModel language enhancements. Try our feature-freeze version here.

Now in MPS 2018.1, you will be able to customize and extend the completion menu for the property and the reference cells from the transformation menu. The reference transformation menu part includes the actions which set the target node to the specific reference. The target nodes come from the scope for that reference. The same goes for the property menu part: it takes the values of the property type and includes actions which set the value to the specific properties.

Also, there are a couple of new types and operations introduced in the SModel language. To make working with node pointers easier we introduce a new “node-ptr<>” type. Such pointers can be resolved to an actual node via the “resolve” operation. Along with it, we have introduced the “node-ptr/ … /” expression, a modern counterpart to the old “nodePointer/ … /” construction.

Not only that, take a look at the list of features and bug fixed for this version here. Try them and report any bugs so we can solve them before the 2018.1 release.

Have a great day!

Your JetBrains MPS Team

The Drive to Develop


Posted in Announcement | Tagged , , , , , | Leave a comment

MPS 2018.1 EAP4 is ready!

The new early access program is here. The whole team is working to bring you a top quality stable release of 2018.1. Check the list of bugs fixed.

Keep reporting your bugs and desirable features on our issue tracker.

Have a great day!

Your JetBrains MPS Team

The Drive to Develop


Posted in Announcement | Tagged , , , , , | Leave a comment

Get the new bug-fix version of MPS 2017.3

Try our new bug-fix version of MPS 2017.3.5. We got rid of some critical bugs reported by the community that affected the behavior of Sidebar. Read the complete list here.

If you find any errors, please log them in our issue tracker. We are listening to you!


Have a great day!

Your JetBrains MPS Team

The Drive to Develop

Posted in Announcement | Tagged , , , , , | Leave a comment

A new EAP build is here for MPS 2018.1

We are happy to launch our MPS 2018.1 EAP2, so try it out! We’ve fixed a bunch of bugs. We’re working to improve the platform daily, and we’re counting on your help. Try this build and please report any bugs to our issue tracker!


Your JetBrains MPS Team

The Drive to Develop

Posted in Announcement | Tagged , , , , , , | Leave a comment

Try our first Early Access Program for MPS 2018.1

We are happy to start the year with the right foot forward and our first 2018.1 EAP. In this version, the main dish is improvements to the Smodel query and the option to display the reflective editor for a subtree. You can see all the other fixes here.

SModel query scopes improvements

Smodel queries that are useful in migration scripts and in the console plugin now behave differently towards the scope they operate on. Read-only models are no longer filtered out from the scopes specified as a query parameter. If a scope is declared as a parameter for a specific query, the query is executed on the whole scope including any read-only models. But if the scope is not specified, the default scope still only contains writable models.

Show reflective editor for the subtree

The reflective editor can be shown for a whole subtree.

To do so select the node, right-click and choose “Show reflective editors for subtree” or press Cmd/Ctrl+shift+[





Showing the reflective editor for just the node is still available from the context menu, or by pressing Cmd/Ctrl+[

For going back to the regular editor, press Cmd/Ctrl+], Cmd/Ctrl+Shift+] or right-click the option “Show regular editor for the Subtree”.

Please use our issue tracker to report bugs or new feature requests.


Have a nice day!

Your JetBrains MPS Team

The Drive to Develop

Posted in Announcement | Tagged , , , , , , | Leave a comment

MPS 2017.3.2 is ready

MPS is celebrating the end of the year 2017 with another bug fix release. You can download MPS 2017.3.2 and enjoy its improved stability.

See you all soon in 2018.1!

Your JetBrains MPS Team
The Drive to Develop


Posted in Announcement | Tagged , , , | Leave a comment

Releasing MPS 2017.3.1

Despite all the celebration after releasing MPS 2017.3 we continued fixing issues so that today we can announce the first bug-fix release – MPS 2017.3.1

Have a great day!

Your JetBrains MPS Team
The Drive to Develop

Posted in Announcement | Tagged , , , | Leave a comment

MPS 2017.3 is Released!

This is the last release of MPS for this year. We are excited about how far MPS has come and where it’s going. We’re always listening to our community in deciding which new features to implement in order to help you build incredible projects with MPS.

Download MPS 2017.3 

For this release, there are new features and enhancements in four key sections: Editor, Generator, Build language, and miscellaneous.



  • Generic placeholders
    We’ve introduced the notion of a generic placeholder. A generic placeholder may be used as an empty position marker in any child collection in any language, and it may optionally hold additional content. By default, this placeholder node is represented in the editor as an empty space and behaves in a transparent way – you can invoke the completion menu on the placeholder node to replace it with a valid child node, or you can press Enter to add a node in the next sibling position. The Control/Cmd + Shift + Enter key combination inserts the placeholder at the current position within a collection.


  • Free-floating comments
    A generic DSL commenting functionality has been implemented using the new generic placeholder. To take advantage of this, simply import the jetbrains.mps.lang.text language or the general-purpose devkit. This will give you a fully editable multi-line text language with support for basic styling (bold, italic and underlined), clickable hyperlinks, and embedded nodes (code). Just type “[” when positioned on a generic placeholder to start typing your comment.
    In addition to this default commenting language, you can create a custom one to meet your specific needs.


  • Customize font family for cell
    A new editor style font family in the editor definition is now available to enable customization of a font alongside its size and style properties. Use the fontFamily expression to reference any of the installed font families.


  • Select All
    A new action, SELECT_ALL, is now available to select the entire content across the whole editor. You can trigger it with the Control/Cmd + A shortcut, and customize its behavior for your own concepts by using action maps.


  • Undo for deleted nodes
    We’ve improved how undo works for deleted nodes. After undoing a root node deletion, you can still undo any previous modifications performed inside that root prior to its deletion.


  • Linking checkpoint models
    Checkpoints now allow resolving references in mapping labels across multiple generator phases. You can thus safely resolve references to nodes even if they were generated at an earlier checkpoint.
  • Avoiding unnecessary file overwrites
    The make process does not overwrite generated files that hold identical content to the one just generated. You can now rely on the fact that only the modified files get updated on disk.


Build language

  • A new way to copy module resources
    The ‘resources’ content root specified on modules now serves the purpose of copying resources into a deployed module. A migration has been provided to incorporate the file masks previously hardcoded in resource-copying templates.


  • Ant Tasks
    The MPS ant task provides full control over the repository contents with several new tags – module, modules and allmpsmodules.


  • Migration Ant task improvements
    The Migration Ant task is now more user-friendly.
    – Problems during migration make the ant script fail and are properly reported to the user.
    – We support all legacy attributes for specifying mps location – mps.home, mps_home environment properties, and the mpshome task attribute. The preferred way is to use the mps.home environment property.
  • Devkit packaging improved
    Devkit modules are no longer deployed as files but instead, are bundled into jar files just like other modules. A migration script has been provided to automatically update the devkit layout elements in your build projects with the new ‘module’ layout element.



  • NodePointer for child elements
    The nodePointer expression from lang.smodel can optionally reference not only roots, but also any named elements now.


  • Make considers model dependencies
    Make of a model also makes all the model dependencies that need to be regenerated. This saves time and helps avoid surprises.
  • Model clone improvement
    The Model Clone action correctly updates cross-root references for elements of the cloned model. The cloned model is now completely independent of the original model.

Clone (2)

So that’s it. We hope you like all the features that we’ve prepared for you. Our community is key for us so we’re always listening. Follow us on Twitter and join our slack channel to stay tuned for more updates and give us your feedback!


Have a great day!

Your JetBrains MPS Team

The Drive to Develop

Posted in Announcement | Tagged , , , , , | Leave a comment

MPS Community event is coming!

Dear Friends,

Our community is growing and we believe that the exchange of knowledge and experience is key to building better products with MPS. We are happy to announce our first MPS community event is happening Spring 2018. This event will focus on 3 main topics: sharing what everyone is doing with MPS, introducing the technology to new and prospective users, and explaining our future plans as the MPS team.

When and where?! Well, we think we have to decide this as a community, so we have created this 3-minute survey to help you get involved. Please answer this survey.

Have a nice day!
Your JetBrains MPS Team

The Drive to Develop

Posted in Announcement, Events | Tagged , , , , | Leave a comment