Date Added: Oct 2009
The development of complex software requires the implementation of functions over a variety of recursively defined data structures. The design (and modeling) of structures can itself be difficult, but complex data can lead to even more complex functions. In this paper, the authors introduce a declarative form of traversal-based generic programming that modularizes functions over a structure using function-objects. The authors' approach is supported by a library and set of generative tools, collectively called DemeterF, which are used to implement adaptive functions.