Rewriting Strategy

Program-Transformation.Org: The Program Transformation Wiki
RewritingStrategies are little programs that define the position and order of application of RewriteRules. Rules are identified by means of labels. Typical strategy combinators are choice and sequential composition and operators for TermTraversal?.

RewritingStrategies were first introduced in ELAN (inspired by RewritingLogic? and TheoremProvingTactics?). The StrategoLanguage takes an extreme view of strategies by implementing RewriteRules as a combination of primitive strategies for PatternMatching and PatternInstantiation?.