Debugging Woven Code

Marc Eaddy; Alfred V. Aho; Weiping Hu; Paddy McDonald; Julian Burger

Debugging Woven Code
Eaddy, Marc
Aho, Alfred V.
Hu, Weiping
McDonald, Paddy
Burger, Julian
Technical reports
Computer Science
Persistent URL:
Columbia University Computer Science Technical Reports
Part Number:
Department of Computer Science, Columbia University
Publisher Location:
New York
The ability to debug woven programs is critical to the adoption of Aspect Oriented Programming (AOP). Nevertheless, many AOP systems lack adequate support for debugging, making it difficult to diagnose faults and understand the program's structure and control flow. We discuss why debugging aspect behavior is hard and how harvesting results from related research on debugging optimized code can make the problem more tractable. We also specify general debugging criteria that we feel all AOP systems should support. We present a novel solution to the problem of debugging aspect-enabled programs. Our Wicca system is the first dynamic AOP system to support full source-level debugging of woven code. It introduces a new weaving strategy that combines source weaving with online byte-code patching. Changes to the aspect rules, or base or aspect source code are rewoven and recompiled on-the-fly. We present the results of an experiment that show how these features provide the programmer with a powerful interactive debugging experience with relatively little overhead.
Computer science
Item views
text | xml
Suggested Citation:
Marc Eaddy, Alfred V. Aho, Weiping Hu, Paddy McDonald, Julian Burger, 2006, Debugging Woven Code, Columbia University Academic Commons, http://hdl.handle.net/10022/AC:P:29472.

Center for Digital Research and Scholarship at Columbia University Libraries | Policies