The process of transforming an expression by expressing its structure as a syntax tree and applying a certain transformation rule to each kind of node, starting from the top. Rules for non-leaf nodes will normally return a result which depends on applying the rules recursively to its sub-nodes. Examples include syntax analysis, code generation, abstract interpretation and program transformation.
Try this search on Wikipedia, OneLook, Google
Nearby terms: strong typing « Stroustrup, Bjarne « struct « structural recursion » structured analysis » Structured Analysis and Design Technique » structured design