Cata Morphism

Program-Transformation.Org: The Program Transformation Wiki
Catamorphism: a generalization of the fold function in FunctionalProgramming.

A function on finite data structures having a tree-like data type is a catamorphism if it can be computed bottom-up by replacing the constructors systematically by an evaluation function. For example, the sum of the values of a tree with numbers at the leaves is a catamorphism: replace the leaf constructor by the identity function and the join constructor by + (addition on numbers).

See also: BirdMeertensFormalism.