Multi-level Debugging for Interpreter Developers
Conventional debuggers require programmers to work on multiple levels of abstraction at once when inspecting call stacks or data. This demands considerable cognitive overhead and deep system knowledge of all implementation technologies involved. When developing an interpreter, programmers often create a dedicated debugger to have a higher-level perspective on the client-language; the resulting use of multiple debuggers at once leads to mental context switches and needs an elaborated method.
We present an integrated debugging tool in which interpreter developers define and select the levels of abstraction on which they focus. Our debugger provides them with an abstraction-specialized view. We consider both host-language and guest-language levels, since either may be levels of interest in a debugging session. We show how this separation into host-language levels can ease the debugging of applications through filtering call stacks and specializing call stack representation on levels.
Tue 15 MarDisplayed time zone: Belfast change
14:00 - 15:00 | |||
14:00 5mDay opening | Workshop Introduction LaMOD David H. Lorenz Open University and Technion IIT, Jacques Noyé École des Mines de Nantes, France, Raffi Khatchadourian Hunter College, City University of New York | ||
14:05 35mTalk | A Lightweight Optimization Technique for Data Types à la Carte LaMOD Hirotada Kiriyama Tokyo Institute of Technology, Tomoyuki Aotani Tokyo Institute of Technology, Japan, Hidehiko Masuhara Tokyo Institute of Technology DOI | ||
14:40 20mTalk | Multi-level Debugging for Interpreter Developers LaMOD Bastian Kruck Hasso Plattner Institute, Potsdam, Stefan Lehmann Hasso-Plattner-Institute, Potsdam, Christoph Kessler Hasso Plattner Institute, Potsdam, Jakob Reschke , Tim Felgentreff HPI, Germany, Jens Lincke Hasso Plattner Institute, Robert Hirschfeld HPI DOI Pre-print Media Attached |