Classifying Programs : a Key for Program Understanding

Abstract :

We have developed a model for classifying LISP functions according to the kind of computations they perform. These computations are abstracted into conceptual components which integrate stereotypical knowledge about computations. The different conceptual components needed to abstract a function are expressed within a signature which is used as classification index. The signature associates this function with a class of functions performing globally the same kind of computations.

We propose classification as general paradigm for program understanding. We have implemented the PRISME tool which classifies functions : it extracts the signature, giving a global insight of the function computations through the association with a class of functions, and it computes the conceptual description which indicates precisely the difference between the actual function and the prototype of its class.

In this paper, we introduce our classification model, we present PRISME and discuss the perspectives of scalability of out model.

Ce papier est disponible en version Postcript ou sur demande .