Kristina Hook, Josie Taylor, Benedict du Boulay
Various attempts have been made to describe novices' misunderstandings of flow of control in Prolog in terms of such bugs as "Redo body from the left" (RDBL) and "Try once and pass" (TOAP). These are useful descriptive terms but it is not clear how stable these bugs are nor how they originate. For example, if a novice gave a RDBL account for one program, would s/he systematically give for all other programs? The authors argue that novices' behaviour is strongly influenced by the properties of the programs they work on, so that under some circumstances they may exhibit RDBL but at other times offer other (sometimes correct!) accounts of control flow. Part of this apparent inconsistency can be explained in terms of novices' "meta-analysis" of the program e.g. a very high level analysis rather than an exhaustive construction of Prolog's execution tree.
This paper is not available online