Abstract. This paper proposes to promote constraints to first-class status. In contrast to constraint propagation, which performs inference on values of variables, first-class co...
Data races occur when multiple threads are about to access the same piece of memory, and at least one of those accesses is a write. Such races can lead to hard-to-reproduce bugs t...
Abstract--Pervasive computing applications involve both software concerns, like any software system, and integration concerns, for the constituent networked devices of the pervasiv...
Dynamic slicing algorithms can greatly reduce the debugging effort by focusing the attention of the user on a relevant subset of program statements. In this paper we present the d...
Breakpoints are perhaps the quintessential feature of a debugger: they allow a developer to stop time and study the program state. Breakpoints are typically specified by selectin...