JUCS - Journal of Universal Computer Science 20(2): 135-168, doi: 10.3217/jucs-020-02-0135
DIE: A Domain Specific Aspect Language for IDE Events
expand article infoJohan Fabry, Romain Robbes, Marcus Denker§
‡ University of Chile, Santiago, Chile§ INRIA Lille Nord Europe, Lille, France
Open Access
Abstract
Integrated development environments (IDEs) have become the primary way to develop software. Besides just using the built-in features, it becomes more and more important to be able to extend the IDE with new features and extensions. Plugin architectures exist, but they show weaknesses related to unanticipated extensions and event handling. In this paper, we argue that a more general solution for extending IDEs is needed. We present and discuss a solution, motivated by a set of concrete examples: a domain specific aspect language for IDE events. In it, join points are events of interest that may trigger the advice in which the behavior of the IDE extension is called. We show how this allows for the development of IDE plugins and demonstrate the advantages over traditional publish/subscribe systems.
Keywords
IDE, plugins, development environment, domain specific aspect languages, aspects