The LISP tutor: it approaches the effectiveness of a human tutor
BYTE - Lecture notes in computer science Vol. 174
PROUST: an automatic debugger for PASCAL programs
BYTE - Lecture notes in computer science Vol. 174
A guide to expert systems
Handbook of AI
Pattern-Directed Inference Systems
Pattern-Directed Inference Systems
Implementation of a program assistant: an inference system approach
Implementation of a program assistant: an inference system approach
Hi-index | 0.00 |
An efficient Pascal semantic tutoring system is being built that aims at detecting and correcting semantic errors in Pascal programs after programs have been successfully compiled. In order to determine that an input program is correct (more precisely, the program seems to be correct), we attempt to compare the program against certain properties deemed necessary for a correct program. Basic approaches taken include:A problem description which an input program is intended to solve is converted to several properties called, goals, all of which a correct input program must satisfy. From each goal, plans are established which become the conditioin parts of production rules. The action parts of production rules contain certain effects that reflect consequences of goals so far satisfied by the input test program.The input test program is converted to an equivalent LISP expression that preserves the program semantic with such auxiliary words as BEGIN, END, DO, TO, ELSE, THEN eliminated. The resulting expression is more suitable for comparison against aforementioned plans.Pattern symbols and pattern variables are used to facilitate more flexible and powerful pattern matching. In addition, association lists are used to keep track of variables that are actually used in the input test program.