One reason debugging hasn't progressed further in recent years is that programmers have been stuck in undebuggable languages like C and C++ in the name of efficiency. (Lieberman and Fry)
