There's nothing more motivating than cool technology!
I spent the last couple of days and the weekend working on the Lego Mindstorms MPS showcase together with Bernhard Merkle. I extended my C implementation on MPS with state machines, tasks, bit patterns and other neat stuff useful for embedded programming and the Lego Mindstorms showcase.
It's hard to overstate how much fun it was! It is literally a matter of hours to extend a programming language (C) with new, domain-specific concepts that integrate completely into the programming experience - including the IDE and the type system.
MPS is really an unbelievably powerful tool, and it is surprisingly mature. Very little "strange behaviour". The only thing missing for a complete experience is an extendible debugger - and that will come with the next release (1.2).
There's only one problem: Using MPS effectively requires quite a bit of learning. The learning curve is significant. It's hard for most people to cough up the time and effort to work through the learning curve - I could not have done it without the wonderful support from Jetbrains' Konstantin Solomatov. The only thing I can say is: it's really worth it. It's a perfect environment for language development and integration, and clearly plays in the same league as Xtext and Intentional's Domain Workbench, with each of the tools having their own strong points and weaknesses.
Go, take a couple of weeks, and dig into it! It's really cool!
PS: I will blog about hte actual showcase later.