Design and use of aspects in rule-based programming

Recently, aspect-oriented programming has enjoyed recognition as a practical solution for an important class of separate and cross-cutting concerns. This paper shows aspects to be useful in the context of rule-based programming languages by demonstrating an adaptable term type checker and after-the-fact algorithm extension. It briey discusses some of the challenges faced when designing and implementing an aspect extension for and in a rule-based term rewriting system.

[1]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[2]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[3]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[4]  Arie van Deursen,et al.  Origin Tracking , 1993, J. Symb. Comput..

[5]  Ralf Lämmel,et al.  Parse-tree annotations meet re-engineering concerns , 2003, Proceedings Third IEEE International Workshop on Source Code Analysis and Manipulation.

[6]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[7]  Uwe Aßmann,et al.  Invasive Software Composition , 2003, Springer Berlin Heidelberg.

[8]  Ralf Lämmel,et al.  Declarative Aspect-Oriented Programming , 1999, PEPM.

[9]  Sandeep K. Shukla,et al.  Using Aspect-GAMMA in the design of embedded systems , 2002, Seventh IEEE International High-Level Design Validation and Test Workshop, 2002..

[10]  Gregor Kiczales,et al.  D: A Language Framework for Distributed Programming , 1997 .