2017
DOI: 10.1145/3106740
|View full text |Cite
|
Sign up to set email alerts
|

A Survey of Algorithmic Debugging

Abstract: Algorithmic debugging is a technique proposed in 1982 by E.Y. Shapiro in the context of logic programming. This survey shows how the initial ideas have been developed to become a widespread debugging schema fitting many different programming paradigms, and with applications out of the program debugging field. We describe the general framework and the main issues related to the implementations in different programming paradigms, and discuss several proposed improvements and optimizations. We also review the mai… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
9
0

Year Published

2018
2018
2021
2021

Publication Types

Select...
4
3
1

Relationship

2
6

Authors

Journals

citations
Cited by 24 publications
(9 citation statements)
references
References 77 publications
0
9
0
Order By: Relevance
“…Our system uses the principles of a technique called Algorithmic Debugging [10] to identify the methods that should be assessed (and corrected) first.…”
Section: Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…Our system uses the principles of a technique called Algorithmic Debugging [10] to identify the methods that should be assessed (and corrected) first.…”
Section: Methodsmentioning
confidence: 99%
“…">Automatic detection of the assessment order. The system uses Algorithmic Debugging [10] to detect the order of assessment. Collaborative assessment.…”
Section: Introductionmentioning
confidence: 99%
“…Many interactive debugging techniques [43], [47]- [49], [53]- [56] leveraged user feedback to localize faults. Algorithmic debugging [53] built a tree of method invocations for a failed test, and then repeatedly asked developers questions to prune the tree for fault localization.…”
Section: Interactive Debuggingmentioning
confidence: 99%
“…However, this debugger is often very difficult to use and to understand. Another approach to the debugging problem is the use of algorithmic debugging [42] and declarative debuggers (see [43][44][45]) like Freja [46,47] or Buddha [48,49]. Both of them try to find the faulty code by asking some automatic questions to the programmers and by analyzing their answers.…”
Section: Introductionmentioning
confidence: 99%