Towards Declarative Debugging of Concurrent Constraint Programs

Markus P.J. Fromherz

Abstract

The concurrent constraint (cc) framework describes a family of concurrent programming languages that use constraints for the synchronization of processes. In this paper, we describe an approach to the declarative debugging of cc programs. We develop the concept of observable and specified behaviors of cc processes, define incorrect processes based on differences between these behaviors, and present a top-down debugging algorithm for the detection of incorrect processes in finite computations. We also investigate the meaning of behaviors in infinite computations. This allows us to define a debugging algorithm for partial computations (prefixes of infinite computations) that can search for an incorrect process as soon as a wrong behavior is observed.

Postscript file

Back to the top.