The Draco approach to constructing software from reusable components
Readings in artificial intelligence and software engineering
JTS: Tools for Implementing Domain-Specific Languages
ICSR '98 Proceedings of the 5th International Conference on Software Reuse
Term rewriting with traversal functions
ACM Transactions on Software Engineering and Methodology (TOSEM)
Component-based DSL development
Proceedings of the 2nd international conference on Generative programming and component engineering
Grammar-driven generation of domain-specific language debuggers
Software—Practice & Experience
Modularizing invasive aspect languages
Proceedings of the 2008 AOSD workshop on Domain-specific aspect languages
Experience with SC: transformation-based implementation of various extensions to C
Proceedings of the 2007 International Lisp Conference
An Invasive Composition System for Local-to-Global Transformations
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
Transformation rules are often used to implement compilers for domain-specific languages. In an ideal situation, each transformation rule is a modular unit transforming one input element of the source program into a new element of the output program. However, in practice, transformation rules must be written which take one input element and produce several new elements belonging to various locations in the output program, the so-called local-to-global transformations. The implementation of such transformations is very complex and tightly coupled which imposes severe constraints on maintenance and evolvability. In this paper, we propose a transformation architecture on top of rewrite rules to loosen this coupling. The resulting transformation system combines the simplicity and modularity properties of rewrite rules with a new semi-automatic composition system that enables the implementation of local-to-global transformations without hampering maintenance and future evolutions.