Wednesday, July 9, 2008

IMP : The IDE Meta-Tooling Platform

For the ones which are interested in language creation, I would track your attention to an Eclipse project in incubation called IMP for Ide Meta-tooling Platform.
Another eclipse sub-project you'll tell me. Maybe but I find the idea behind this project very interesting : define a language grammar and then generate all the IDE around it making instantaneously this language a tooled language. The golden door to develop DSL, the graal of the next years.
A language is actually a good language not only because of the intrinsic quality of the language itself, but also the community around it. And the best way to make growing quite quickly this community is to have tools, and more, high-performance tools.
IMP(formerly SAFARI) has its roots in a project called "Universal IDE" which was started by Chris Laffra in 2004. Here is the description of the project itself :
"The Eclipse IMP's purpose is to develop a set of extensible frameworks and exemplary tools built on the Eclipse platform that ease the creation of IDEs for programming languages (new or otherwise) that do not yet enjoy full-featured Eclipse support. Our ultimate goal is to assist language implementers in creating IDEs with a richness and usability on par with the Eclipse Java Development Toolkit (JDT). In the near term, however, we intend to provide support for a significant portion (but not all) of the JDT's functionality. It is our belief that this is a natural next step in the evolution of the Eclipse - doing for programming IDEs what RCP does for rich UI applications.By accelerating the process of developing new IDEs, we also hope to expand the use of Eclipse to new programming domains, further enhancing the appeal of the Eclipse platform. In fact, we hope to encourage language design experimentation by making it viable for language implementers and their communities to produce full-featured IDEs with more reasonable effort than is presently possible."
You can find more information about the project here and on their website.
It exists also several interesting projects in this area like XText or TMF or openArchitectureWare.

No comments: