Scoped Dynamic Rewrite Rules

Eelco Visser. Scoped Dynamic Rewrite Rules. Electronic Notes in Theoretical Computer Science, 59(4):375-396, 2001. [doi]


The applicability of term rewriting to program transformation is limited by the lack of control over rule application and by the context-free nature of rewrite rules. The first problem is addressed by languages supporting user-definable rewriting strate- gies. This paper addresses the second problem by extending rewriting strategies with scoped dynamic rewrite rules. Dynamic rules are generated at run-time and can access variables available from their definition context. Rules generated within a rule scope are automatically retracted at the end of that scope. The technique is illustrated by means of several program tranformations: bound variable renaming, function inlining, and dead function elimination.


The following is a more recent and up-to-date version of this publication: