Software Reuse by Specialization of Generic Procedures through Views (1997)
A generic procedure can be specialized, by compilation through views, to operate directly on concrete data. A view is a computational mapping that describes how a concrete type implements an abstract type. Clusters of related views are needed for specialization of generic procedures that involve several types or several views of a single type. A user interface that reasons about relationships between concrete types and abstract types allows view clusters to be created easily. These techniques allow rapid specialization of generic procedures for applications. Index Terms -- software reuse, view, generic algorithm, generic procedure, algorithm specialization, partial evaluation, direct-manipulation editor, abstract data type.
IEEE Trans. on Software Engineering, Vol. 23, 7 (1997), pp. 1-17.

Gordon Novak Faculty novak [at] cs utexas edu