Event-Based Debugging: Ariadne's Approach
In Ariadne, we provide event-based behavioral abstraction and logical
time manipulation by combining a simple modeling language together
and functional queries. Our modeling language is easy to
learn and use. Its patterns are often too coarse, however, and match
behaviors in unintended ways. To compensate we provide functional
queries that give feedback both on matched and unmatched patterns.
To illustrate the features of Ariadne, let us consider an actual
parallel program and see how we can locate the bug using both event
and state based debugging approaches. We look at a binary image
compression algorithm written in an object parallel language pC++.