An Advisory System for Developing Data Representations

A knowledge-based interactive system for choosing abstract data structures and concrete represent. tions for them is described. The system acts as an "expert" on data structures and is to be consulted by programmers during the design stage of their work A specification method is described which assumes a restricted vocabulary of data structure terminology common to the user and the system. The selection process uses a base of knowledge about known abstract data structures and representations, and provides new combinations of known structures which satisfy complex requirements not anticipated in advance