A third EAP release of MPS 3.0 is ready

Another round of fixing and polishing to MPS 3.0 has just been finished and packaged into an EAP release. Get the most recent EAP release from the download page so you may give it a serious try.
Check out the list of all fixed issues in this release.
The final release is just round the corner.

We also bundled several new sample projects that let you play with multiple editor projections, type-system or mathematical notations. They might be a good way for you to try 3.0 out.
You can read more on the bundled sample projects in the documentation.


Develop with pleasure!
-JetBrains MPS Team

Posted in Announcement | Tagged , | Leave a comment

A face-lifted generator tutorial

While playing with the 3.0 EAP releases, you may consider checking out the updated MPS generator tutorial. It has undergone a major rewrite to accommodate for all the recent changes to the MPS generator and to better serve the purpose of teaching the various code generation techniques that MPS offers. The bundled generator_demo sample project, which you find in the MPS 3.0 EAP distro, has been updated, too.


Develop with pleasure!
-JetBrains MPS Team

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

A new JetBrains MPS 3.0 EAP release is out

If you like living on the edge, we’ve got a new EAP release ready for you to try out. In addition to the features of the previous EAP release, we’ve enabled automated migrations that will convert your 2.5 projects to 3.0.

Get the release from the usual place and don’t forget to let us know how things worked. Help us shape the next release!


Develop with pleasure!
-JetBrains MPS Team

Posted in Announcement | Tagged , , | Leave a comment

JetBrains MPS 3.0 entering EAP today

This is exciting news for all the MPS fans out there. You can now get the EAP builds of MPS 3.0 and start playing with what we’ve build over the last year. It took a while, and we hope it was worth waiting for. Here’s a list of the most notable additions and improvements that you could benefit from right away:

  • Multiple editors per concept
  • Default editor for concept
  • Overriding editor components
  • BaseLanguage structure changes and editor usability improvements
  • Custom persistence API and XML persistence
  • New UI for model/module properties
  • Structure language changes
  • VersionControl support UI improvements

The IntelliJ IDEA plugin has also been improved:

  • Referencing Java sources from MPS models
  • Referencing MPS models from java sources
  • Handling Refactorings, finding usages and similar functionality across the Java/MPS boundary
  • Support for out-of-process make

This is obviously not a full list and we’ll gradually document and introduce all the new functionality that’s worth your attention.

Granted, there are rough edges that need fixing before going final. We’ll keep polishing the EAP builds and your feedback would help us. Please test the EAP builds and report all issues you discover.


Develop with pleasure!
-JetBrains MPS Team

Posted in Announcement | Tagged , | 2 Comments

Coming in JetBrains MPS 3.0 – multiple editor projections

Today we’ve got another video giving you a taste of what’s being prepared for the upcoming 3.0 release – multiple editor projections.

This is truly unleashing the power of projectional editing. The new support for multiple projections will give the language designers the power to define alternative editors and so prepare different ways for the users to interact with their code. These editors can be created for new as well as existing languages.

The language users will then be able to choose the most appropriate editor for the job and switch between the alternative editors whenever needed.

Check it out!


Develop with pleasure!
-JetBrains MPS Team

Posted in Feature | Tagged , | 2 Comments

Fluent Java editing in MPS 3.0

Here’s a short video showing some of the new capabilities of the MPS BaseLanguage (Java) editor coming in 3.0. Based on the feedback we received from many of our users, we put extra effort into making the editor feel like a textual one in many aspects. Namely:

  • there are no visual placeholders for extended classes and implemented interfaces
  • you can create fields and methods just by typing
  • many of the class, field or method modifiers, such as final, static and abstract can be entered and removed in more intuitive ways
  • switching among IfStatements, WhileStatements, Do-WhileStatements and ForLoops is now just a matter of typing a few characters
  • unwrapping the body of an IfStatement or a TryCatchBlock is as simple as hitting Delete
  • the javadoc language now behaves much more like text
  • javadoc comments can be added by typing /** and removed by a single hit on the Delete key
It is always a pleasure to push the envelop of projectional editing. We believe these changes will make your life a bit easier and more convenient.


Develop with pleasure!
-JetBrains MPS Team

Posted in Feature | Tagged , , | Leave a comment

JetBrains MPS at Code Generation 2013

Are you coming to Code Generation 2013? The JetBrains MPS and YouTrack teams are sending a four member crew this year. We’ll present MPS 3.0, teach the basics of projectional editing and practice language extension during the MPS hands-on session on Wednesday April 10th. On Thursday 11th during the Have Your Language Built While You Wait session, we’ll be available to help you start prototyping your own language. You’ll also be able to grab us for a chat any time at the JetBrains booth down in the lobby and discuss whatever comes to mind related to DSLs, MPS and life. See you there!


Develop with pleasure!
-JetBrains MPS Team

Posted in Events | Tagged , , , | 2 Comments

Fast Track to JetBrains MPS

Most of the readers of this blog can ride MPS already. Newcomers, however, need guidance and help to overcome the initial barrier so that they could start using the tool and benefit from it. We’re constantly trying to come up with ways that would improve the initial experience and just recently we published a short step-by-step tutorial – Fast Track to MPS – 9 steps to mastery. The tutorial aims at newbies and guides them to walk steadily from simple concepts towards the more involved ones so that they gradually build the necessary knowledge.

If you know of anyone, who might be willing to give MPS a try, please consider helping them start by pointing them to the new tutorial.


Develop with pleasure!
-JetBrains MPS Team

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

A book on DSL Engineering (and JetBrains MPS)

Here’s a tip – Markus Voelter (http://www.voelter.de/) has just published his new book, which is highly relevant to our field:

DSL EngineeringDSL Engineering
Designing, Implementing and Using Domain Specific Languages

The book provides a thorough read on the subject, introducing the reader into the core aspects of DSL design and implementation. It explains the fundamental principles of using DSLs as part of modern development cycle and showcases JetBrains MPS as one of the tools that aim to make DSL development approachable.

This book provides a thorough introduction to DSLs and lends inspiration to readers of where and how to use DSLs. It relies on today’s state-of-the-art language workbenches: JetBrains MPS, Xtext and Spoofax. Thus on top of gaining an insight into each of these tools individually you will get a direct side-by-side comparison of the tools, their capabilities and targets.

DSL Engineering is available in print and as a PDF (donationware) from dslbook.org.


Develop with pleasure!
-JetBrains MPS Team

Posted in Announcement | Tagged , , , | 1 Comment

JetBrains MPS 2.5.4 arrived

Here’s the news that you have been waiting for – 2.5.4 is out. (If you were actually waiting for news about 3.0, please read on). Grab 2.5.4 while it’s fresh. The release notes will give you full details on what’s changed.

Except for the usual doze of bug-fixes, 2.5.4 comes with one major new feature that is definitely worth your attention:

  • the ability for build scripts to rebuild an MPS project from scratch.

Without the need to regenerate in the MPS workbench or to keep your generated code in VCS, you just invoke ant generate on the command line and your whole MPS project gets regenerated, compiled and packaged. What a relieve!

There’s a catch, though. In order for the rebuild to be possible, your project must not contain bootstrapping dependencies, e.g. a module must not use a language, which requires that same module for generation. Chasing such dependency violations and hunting them down can be a challenge without proper tools. To give you a hand, the Dependency Analyzer has been enhanced and we documented the required steps on a dedicated how-to page that will give you all relevant information and guide you through the process.

As a bonus, once you remove all bootstrapping dependencies from your projects, you’ll be in a good position to migrate them automatically to MPS 3.0 eventually.

Speaking of MPS 3.0 …

Yeah, we’ve slipped behind schedule with 3.0. The 3.0 codebase has undergone a major facelift. We’ve refactored the core API so that MPS will provide stable and robust set of well documented APIs to allow access to the models directly from your code. It will also help us evolve MPS faster. The price we pay now will certainly pay off in the near future.

The features mentioned in the (updated) roadmap for 3.0 are gradually being added and we are coming close to a point when the 3.0 EAP will open. Just give us a few more weeks, please.
You’ll soon be able to put your hands on

  • Multiple editors per concept
  • Tight IntelliJ IDEA integration
  • Smoother BaseLanguage editor

and many other improvements.


Develop with pleasure!
-JetBrains MPS Team

Posted in Announcement, Uncategorized | Tagged , , | 2 Comments