LAURA, a system to debug student programs

作者:

Highlights:

摘要

An effort to automate the debugging of real programs is presented. We discuss possible choices in conceiving a debugging system. In order to detect all the semantic errors, it must have a knowledge of what the program is intended to achieve. Strategies and results are very dependent on the way of giving this knowledge. In the LAURA system that we have designed, the program's task is given by means of a ‘program model’. Automatic debugging is then viewed as a comparison of programs. The main characteristics of LAURA are the representation of programs by graphs, which gets rid of many syntactical variations, the use of program transformations, realized on the graphs, and its heuristic strategy to identify step by step the elements of the graphs. It has been tested with about a hundred programs written by students to solve eight different problems in various fields. It is able to recognize correct programs even if their structures are very different from the structure of the program model. It is also able to express exact diagnostics of errors, or at least to localize them. It could be an effective tool for students programmers.

论文关键词:

论文评审过程:Received 5 March 1979, Available online 20 February 2003.

论文官网地址:https://doi.org/10.1016/0004-3702(80)90023-5