Coca: an automated debugger for C
Proceedings of the 21st international conference on Software engineering
Application of Reflection in Model Transformation Languages
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Change-Enabled Software Systems
Software-Intensive Systems and New Computing Paradigms
Empirical studies on programming language stimuli
Software Quality Control
Querypoint: moving backwards on wrong values in the buggy execution
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
International Journal of Human-Computer Studies
An Empirical Investigation into Programming Language Syntax
ACM Transactions on Computing Education (TOCE)
Hi-index | 0.00 |
An "Omniscient Debugger" works by recording all state changes in the run of a program, and then allowing the programmer to explore the history of that program - effectively going "backwards in time." Event analysis debuggers work by observing events as they occur, and allowing the programmer to write queries which will pause the program when matched - effectively highly sophisticated breakpoints.Recently we have integrated the two techniques to produce an omniscient debugger which can use event queries to search the history of a program interactively. The query mechanism is designed along the lines of an EMACS incremental search, where the query is typed into a "minibuffer" at the bottom of the debugger window, and the commands "next match" and "previous match" are single keystrokes. The result is instantaneous feedback with no danger of missing an interesting state by going too far.