Informations and tutorials on the language workbench Jetbrains MPS

Developing Business Applications using Jetbrains MPS: interview with Daniel Stieger

Why this interview? This time I sat down with Daniel Stieger, who is the co-founder of a well known consulting company in the Language Engineering field. We met at at Jetbrains MPS meeting in Munich last year and our companies (ours Strumenta and his Modellwerkstatt) offer similar services. So for us it was a great opportunity […]

How to Add an Action to the Jetbrains MetaProgramming-System

The Jetbrains MetaProgrammin-System (MPS) I published the original version of this article in March 2012, using MPS 2.0.6. I have then updated in July 2018, using MPS 2018.1.5. It is interesting to see how MPS evolved in the meantime. The MetaProgramming-System is a Language Workbench based on projectional editing and it is the most advanced […]

How to Add JARs to a Jetbrains MPS Project

Jetbrains MPS is a wonderful tool to create DSLs. We love it and use it regularly in our consultancy work. So we have written about Jetbrains MPS before. Being a projectional editor allows you to easily create DSLs that can be used through a graphical interface or things like mathematical formulas. Though all this power […]

Interview with Vaclav Pech on Jetbrains MPS: the community and the future

If you are reading this blog regularly you know that I am interested in many things but language engineering is the topic closest to my heart. You could have also noticed that I am spending a lot of time working with MPS. If you are instead a new reader you may not know that MPS […]

ANTLR and Jetbrains MPS: Parsing files and display the AST using the tree notation

  Itemis did it again: they just released a new very cool plugin for Jetbrains MPS. This one permits to define new tree editors. They look like this: In this post we are going to see: how to use ANTLR parsers inside MPS how to represent the parsed AST using the tree notation In particular we […]

mps-bytecode: creating, loading, modifying, saving and executing JVM class files using Jetbrains MPS

mps-bytecode: creating, loading, modifying, saving and executing JVM class files using Jetbrains MPS

I recently created this project to edit JVM class-files inside Jetbrains MPS. Why? It was fun It is a great tool to learn about the JVM internals. Do you know what a frame is? How dynamic invoke works? Instead of generating Java code for my applications I could translate to mps-bytecode. More about this later. […]

Tabular projections in Jetbrains MPS: let's start building an accounting system

Tabular projections in Jetbrains MPS: let’s start building an accounting system

Jetbrains MPS is an amazingly flexible tool which permits to use several kinds of projections. Today we are going to take a look at tables. What is Jetbrains MPS to me Jetbrains MPS is a Language Workbench: a system to design languages and supporting tools. This is one definition of MPS, but for me it […]

Raising the level of abstraction_ what if we tried to do that bottom up_

Raising the level of abstraction: what if we tried to do that bottom up?

It is clear that software development is going in the direction of raising the level of abstraction since it was born. The reason is simple: we can juggle with so many concepts in our mind. If we are busy thinking about what we stored in the EAX register it is difficult to think about the […]

Getting started with Jetbrains MPS: how to define a simple language (screencast)

I am blessed (or cursed) with having many different interests in software development. However my deepest love is with language engineering. There are different tools and techniques but Jetbrains MPS is particularly fascinating. To help people getting started or just get the feeling of how it is to develop with Jetbrains MPS I recorded this short screencast. […]

The C to mbeddr-C importer_ a first look

The C to mbeddr-C importer: a first look

Currently I am in Munich, working at Fortiss, an institute of the Technische Universität München. I am here to work on mbeddr, which is a super-cool project. mbeddr supports embedded software development based on an extensible version of C language and IDE. Existing extensions include interfaces with pre- and postconditions, components, state machines and physical units, […]

Do You Need a Domain Specific Language (DSL)?

We can design and implement languages tailored to support your processes. We build also all the necessary infrastructure: editors, code generators, compilers, simulators. Our goal is to deliver complete solutions.

We can use different technologies like Jetbrains MPS, Xtext, and ANTLR for custom solutions.