Zusammenfassung

This paper presents a box-oriented debugging model for the functional
logic language ALF. Due to the sophisticated operational semantics of
ALF which is based on innermost basic narrowing with simplification,
the debugger must reflect the application of the different computation
rules during program execution. Hence our debugging model includes not
only one box type as in Byrd's debugging model for logic programs but
several different kinds of boxes corresponding to the various
computation rules of the functional logic language (narrowing,
simplification etc.). Moreover, additional box types are introduced in
order to allow skips over (sometimes) uninteresting program parts like
proofs of the condition in a conditional equation. Since ALF is a
genuine amalgamation of functional and logic languages, our debugging
model subsumes operational aspects of both kinds of languages. As a
consequence, it can be also used for pure logic languages, pure
functional languages with eager evaluation, or functional logic
languages with a less sophisticated operational semantics like SLOG or
eager BABEL.