Recognizing a Program's Design: A Graph-Parsing Approach

  • Authors:
  • Charles Rich;Linda M. Wills

  • Affiliations:
  • -;-

  • Venue:
  • IEEE Software
  • Year:
  • 1990

Quantified Score

Hi-index 0.02

Visualization

Abstract

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.