ERIC Number: ED237055
Record Type: Non-Journal
Publication Date: 1983-Aug
Reference Count: N/A
PROUST: Knowledge-Based Program Understanding.
Johnson, W. Lewis; Soloway, Elliot
This report describes PROUST, a computer-based system for online analyses and understanding of PASCAL programs written by novice programmers, which takes as input a program and a non-algorithmic description of the program requirements and finds the most likely mapping between the requirements and the code. Both the theory and processing techniques by which the system understands buggy and correct programs are examined. Preliminary sections describe the difficulties a program understanding system must overcome in order to accurately analyze a program and provide an example of the results of PROUST's analysis. Processing capabilities are then illustrated through a description of the overall strategy by which PROUST searches through the space of potential interpretations for one that best accounts for the student's program and of how PROUST actually produces an analysis, using both a buggy and a correct program as examples. A preliminary performance test showed that when PROUST was used to analyze 206 different programs of beginning PASCAL programming students, it commented on only 67%, but its analysis was correct almost 94% of the time. Twenty-one references are listed. (Author/LMM)
Publication Type: Reports - Descriptive
Education Level: N/A
Sponsor: Office of Naval Research, Arlington, VA. Personnel and Training Research Programs Office.
Authoring Institution: Yale Univ., New Haven, CT. Dept. of Computer Science.