We provide a pragmatic, transformation-based approach for expressing and tracking changes in rule-based programs in the course of program evolution. To this end, we design an operator suite for the transformation of rule-based programs. The operators facilitate steps for clean-up, refactoring, and enhancement. We use SOS-based interpreter examples to illustrate evolution of rule-based programs. We use logic programming to execute the examples, while the relevant evolution operators are made available as logic meta-programs.
@article{Laemmel04-JLAP,
author = "Ralf L{\"a}mmel",
title = "{Evolution of Rule-Based Programs}",
journal = "Journal of Logic and Algebraic Programming",
year = 2004,
note = {Special Issue on Structural Operational Semantics; To appear}
}