The optimizer prototyping toolset Dora [Farnum90] consists of a set of languages embedded in Lisp. One of the languages is the transformation language Tess. The language allows the specification of tree-walks by choosing from a small set of predefined strategies such as top-down and bottom-up. It supports pattern matching with first-order patterns with a few unusual features: horizontal iterators are regular expressions that characterize the arguments of varyadic operators. Vertical iterators allow specification of patterns consisting of nested applications of the same operator, i.e, a rudimentary form of matching modulo associativity.
References
See Also
Other TransformationSystems