This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Recognizing a Program's Design: A Graph-Parsing Approach
January/February 1990 (vol. 7 no. 1)
pp. 82-89

Psychological experiments have shown that programmers tend to use the same structure over and over. The authors call these commonly used programming structures 'cliches'. They describe a prototype, the Recognizer, that automatically finds all occurrences of a given set of cliches in a program and builds a hierarchical description of the program in terms of the cliches it finds. The key to the Recognizer's approach is a representation shift. Instead of looking for cliches directly in the source code, the Recognizer first translates the program into a language-independent, graphical representation called the Plan Calculus. The Plan Calculus is a program representation shared by all components of the Programmer's Apprentice, an intelligent programming system. Thus, although the authors have demonstrated the Recognizer only on small Common Lisp programs, the underlying technology is language-independent.

Index Terms:
graph-parsing; programming structures; prototype; Recognizer; cliches; hierarchical description; representation shift; graphical representation; Plan Calculus; Programmer's Apprentice; intelligent programming system; Common Lisp; program diagnostics; software tools
Citation:
Charles Rich, Linda M. Wills, "Recognizing a Program's Design: A Graph-Parsing Approach," IEEE Software, vol. 7, no. 1, pp. 82-89, Jan.-Feb. 1990, doi:10.1109/52.43053
Usage of this product signifies your acceptance of the Terms of Use.