Thursday, November 26, 2009

Helvetia - embedding languages

You will find language extensions in any of the newer "mainstream" programming languages. Architectures like Java EE now rely heavily on features like annotations, JDK 7 may possibly also include closures.
You can embedd LINQ in C# 3.0 and so on ...

Creating Domain Specific Languages (DSL) is also getting more attention these days.

Since Smalltalk is defined in itself using objects and messages it was and still is easy to change and extend not only the system and tools but also the language itself.

Here Project HELVETIA is a new and lightweight approach to embed new languages into the host language. Even domain specific languages - demonstrated by a roman numeral example allowing you to easily write:

self assert: IV + I = 5

in an SUnit test.

Lukas provides an image you can play with and will talk about it on Smalltalk/Ruby BlockCamp in Paris.

No comments: