2005-029 - A Debugging Interface for Asking Questions about Program Failures
Abstract
We add a button labeled "Why" to a programming environment that pauses a running program and presents questions that allow the programmer to debug the program by asking questions. The button pops up sub-menus of objects which did or didn't do something recently and the actions they did or didn't perform. The answers are in terms of natural language (explaining why that object did or didn't perform the operation) and an interactive time-line visualization we call the "whyline" that shows the results.