Algorithmic Debugging of Java Programs

R. Caballero, C. Hermanns, H. Kuchen
2007 Electronical Notes in Theoretical Computer Science  
In this paper we propose applying the ideas of declarative debugging to the object-oriented language Java as an alternative to traditional trace debuggers used in imperative languages. The declarative debugger builds a suitable computation tree containing information about method invocations occurred during a wrong computation. The tree is then navigated, asking the user questions in order to compare the intended semantics of each method with its actual behavior until a wrong method is found
more » ... . The technique has been implemented in an available prototype. We comment the several new issues that arise when using this debugging technique, traditionally applied to declarative languages, to a completely different paradigm and propose several possible improvements and lines of future work.
doi:10.1016/j.entcs.2007.01.005 fatcat:vh7s373c4nbd3ogn73wyhvegtq