Title
Controlling search space materialization in a practical declarative debugger
Abstract
While the idea of declarative debugging has been around for a quarter of a century, the technology still hasn’t been adopted by working programmers, even by those working in declarative languages. The reason is that making declarative debuggers practical requires solutions to a whole host of problems. In this paper we address one of these problems, which is that retaining a complete record of every step of the execution of a program is infeasible unless the program’s runtime is very short, yet this record forms the space searched by the declarative debugger. Most parts of this search space therefore have to be stored in an implicit form. Each time the search algorithm visits a previously unexplored region of the search space, it must decide how big a part of the search space to rematerialize (which it does by reexecuting a call in the program). If it materializes too much, the machine may start to thrash or even run out of memory and swap space. If it materializes too little, then materializing all the parts of the search space required by a debugging session will require too many reexecutions of (parts of) the program, which will take too long. We present a simple algorithm, the ideal depth strategy, for steering the ideal middle course: minimizing reexecutions while limiting memory consumption to what is feasible. We show that this algorithm performs well even when used on quite long running programs.
Year
DOI
Venue
2006
10.1007/11603023_3
PADL
Keywords
Field
DocType
debugging session,swap space,complete record,practical declarative debugger,declarative debugging,search algorithm,search space,declarative language,declarative debuggers,controlling search space materialization,declarative debugger,simple algorithm
Search algorithm,Programming language,Computer science,Debugger,Theoretical computer science,Swap (finance),Limiting,Algorithmic program debugging,Runtime system,Debugging
Conference
Volume
ISSN
ISBN
3819
0302-9743
3-540-30947-0
Citations 
PageRank 
References 
1
0.35
8
Authors
2
Name
Order
Citations
PageRank
Ian MacLarty140.75
Zoltan Somogyi2571141.85