A visualized educational system for pointer operations in programming
WBE'06 Proceedings of the 5th IASTED international conference on Web-based education
Practical Object-Oriented Back-in-Time Debugging
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Lessons in Software Evolution Learned by Listening to Smalltalk
SOFSEM '10 Proceedings of the 36th Conference on Current Trends in Theory and Practice of Computer Science
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
Proceedings of the 34th International Conference on Software Engineering
Hi-index | 0.00 |
Many programmers have had to deal with an overwrittenvariable resulting for example from an aliasing problem.The culprit is obviously the last write-access to that memorylocation before the manifestation of the bug. The usualtechnique for removing such bugs starts with the debuggerby (1) finding the last write and (2) moving the control pointof execution back to that time by re-executing the programfrom the beginning. We call the feature to implement thisprocess "reverse watchpoint" and believe automating it isimportant.In this paper we propose a new concept, "position", thatis, a point in the program execution trace, as needed forstep (2) above. The position enables debuggers to automatethe control of program execution to support common debuggingactivities. We have implemented position in Java witha bytecode transformer. Measurements show that positioncan be provided with an acceptable amount of overhead.