High-Level Debugging Facilities and Interfaces: Design and Developement of a Debug-Oriented I.D.E.
While debugging in general is an essential part of the development cycle, debuggers have not themselves evolved over the years as other development tools have through the advancement of Integrated Development Environments. In this free-software research project we propose a way to overcome this problem by introducing, designing and developing a high-level debugging system.
High-Level debugging systems are systems that integrate a source - level debugger with other technologies as to extent both the facilities and the interfaces of the debugging cycle. We designed and developed such a system in a debugging-centric IDE, Misha. Misha, introduces among other things: syntax-aware navigation, data-displaying and editing, reverse execution, debugging scripting and inter-language evaluation through the integration of its source-level debugger (gdb) with a full-fledged source parser, data visualisation tools and other free software technologies.
KeywordsIntegrate Development Environment Free Software Foundation Harmonia Project Static Code Analysis Data Visualisation Tool
- 1.Akgul, T., Mooney, V.J.: Instruction-level reverse execution for debugging (2002)Google Scholar
- 3.Berkeley. Harmonia project (2009), http://harmonia.cs.berkeley.edu/harmonia/index.html
- 5.Brooks Jr., F.P.: The mythical man-month (anniversary ed.). Addison-Wesley Longman Publishing Co., Inc., Boston (1995)Google Scholar
- 6.Visual Studio Developer Center. Visualisers (2009), http://msdn.microsoft.com/en-us/library/zayyhzts.aspx
- 7.Ds-emedia. Jbixle, high-level debugger (2006), http://www.jbixbe.com/
- 9.Ellson, J.: Graphviz, graph visualization software (2009), http://www.graphviz.org/
- 10.Free Software Foundation. High-priority projects (2009), http://www.fsf.org/campaigns/priority.html
- 11.Golan, M., Hanson, D.R.: Duel - a very high-level debugging language (1993)Google Scholar
- 13.Menapace, D.M.J., Kingdon, J.: The “stabs” debug format. Cygnus Support (2004)Google Scholar
- 14.Kitware, B.K.: Gcc xml, extention (2009), http://www.gccxml.org/HTML/Index.html
- 15.Lewis, S.A.: Techniques for efficiently recording state changes of a computer environment to support reversible debugging (2001)Google Scholar
- 16.Narayanasamy, S., Pokam, G., Calder, B.: Bugnet: Continuously recording program execution for deterministic replay debugging. In: ISCA, pp. 284–295 (2005)Google Scholar
- 17.Wolfram Research. Instant high-level debugging (2009), http://www.wolfram.com/technology/guide/InstantHighLevelDebugging/
- 18.Gdb Development Team. Gdbreversible. Debugging (2009), http://sourceware.org/gdb/wiki/Reversible
- 19.Gdb Development Team. Pythongdb (2009), http://sourceware.org/gdb/wiki/PythonGdb
- 20.Teawater. Gdb record patch (2009), http://sourceforge.net/projects/record/
- 21.Tromey, T.: Interview: Gcc as an incremental compile server (2007), http://spindazzle.org/greenblog/index.php?/archives/74-Interview-GCC-as-an-incremental-compile-server.html
- 22.Zeller, A.: Debugging with DDD. Gnu Press (2004)Google Scholar