BT

Language Workbenches May Ultimately Completely Change the Way We Do Programming

by Abel Avram on May 06, 2009 |

After many years in development, Intentional Software has finally released their Intentional Domain Workbench (IDW). JetBrains has open sourced their Meta Programming System (MPS), currently in Beta 2.

Magnus Christerson, Product Manager at Intentional Software, demoed IDW during DSL DevCon creating quite a stir in the audience. IDW is basically a Language Workbench but it also includes a Projectional Editing environment. The entire workbench is built around Intentional Tree which holds a semantic model allowing multiple projections of the domain and can be used to generate code. The user can view and edit the model through various projections, each edit updating the model and the other projections. The model is then converted into code through compilation.

IDW is targeted at programmers to build a domain specific environment for business domain experts.  The domain experts can express concepts and rules using any customary notation they prefer - their business domain language - which can be projected using text, graphics, symbols, tables etc.  The programmers job is to build the desired projections and also transformations that will generate code into a programming language domain. The domain expert will edit domain requirements that are then transformed into code. IDW currently has code generation domains for C#, Java, C++, Ruby, SQL, HTML, Javascript and XML, and additional can be added by customers.

The demonstration has greatly impressed the audience. Markus Voelter said:

If you're into DSLs, you *have* to watch this video. It clearly shows the potential. Give ISC a little bit more time to polish the system, and this is going to be a revolution!

Larry O'Brien:

Intentional Software has forged a silver bullet.

Glenn Block:

This is not about snazzy demos, this is about completely changing the world we know it.

IDW is not publicly available yet, Intentional Software choosing to share it with selected customers like Capgemini and ThoughtWorks. Magnus C. invites those interested to write him, but they should expect a very restrictive NDA.

JetBrains released Meta Programming System for a Language Oriented Programming (PDF) style. Basically, it is the same thing as a Language Workbench. The product is currently in Beta 2, the production being expected this quarter. MPS is free, most source code being available under Apache 2 License.

Useful resources: Lang.NET presentation on IDW by Magnus C., Martin Fowler’s report of the IDW demo held at Lang.NET, InfoQ presentation on domains and DSLs by Magnus C.

Hello stranger!

You need to Register an InfoQ account or to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

When will DSLs be mainstream? by Johan den Haan

These workbenches are a real stimulant for DSL development. I wonder how long it will take until the design and use of DSLs is just mainstream...

I guess we're going to see a split between developers going 'meta', i.e. they are going to use DSL tools to produce Model-Driven Software Factories, and developers just using that factories in which they 'program' or 'model' using domain-specific abstractions.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2013 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT