Domain specific debugging aids for novice programmers
Joachim H. Laubsch, Marc Eisenstadt · 1981
We have been developing a debugging aid tailored to novice programmers learning to use a simple asaertional database language. Based in part on existing programmer's apprentice and debugging projects, our system makes several novel contributions: it is oriented towards a large audience (several hundred per year) of computernaive users; the system deals with argument passing, recursion, and side-effects. Symbolic evaluation of the user's code produces an effect-description which is compared with an idealised effect-description (derived from a library plan). The library plan uses domainspecific knowledge to allow the user a great deal of freedom to invent alternate approaches to the programming task at hand. Based on effectdescription mismatches, a variety of hints for correcting the code can be given to the student.