The Essence of Strategic Programming (2002)
| Citations: | 9 - 0 self |
BibTeX
@MISC{Lämmel02theessence,
author = {Ralf Lämmel and Eelco Visser and Joost Visser},
title = {The Essence of Strategic Programming},
year = {2002}
}
OpenURL
Abstract
Strategic programming is generic programming with the use of strategies. A strategy is a generic data-processing action which can traverse into heterogeneous data structures while mixing uniform and type-specific behaviour. With strategic programming, one gains full control over the application of basic actions, most notably full traversal control. Using a combinator style, traversal schemes can be defined, and actual traversals are obtained by passing the problem-specific ingredients as parameters to suitable schemes. The prime application domain for strategic programming is program transformation and analysis. In this paper, we provide a language-independent definition that generalises over existing incarnations of this idiom in term rewriting, functional programming, and object-oriented programming.







