Software Reuse through View Type Clusters (1992)
Reuse of software is inhibited by the dependence of the form of program code on the kind of data structures used. We describe methods by which generic programs can be specialized, by compilation through views, for use with a given data structure. A view describes how an actual data type can be viewed as an instance of an abstract type. Clusters of related views are needed for specialization of generic programs involving more than one data type. Descriptions of abstract data types allow view clusters to be constructed automatically or semi-automatically by reasoning about the properties of application types. These techniques, which have been implemented using the GLISP language and compiler, allow easy and rapid adaptation of generic procedures for an application by first viewing the application data types as the appropriate abstract types, then specializing the generic procedures by compilation through the view cluster.
In Proc. 7th Knowledge-Based Software Engineering Conference (KBSE-92), pp. 70-79, McLean, VA, September 1992. IEEE Computer Society Press.

Gordon Novak Faculty novak [at] cs utexas edu