Debugging optimized code with dynamic deoptimization
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
OPTVIEW: a new approach for examining optimized code
Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Software technology maturation
ICSE '85 Proceedings of the 8th international conference on Software engineering
A study on exception detection and handling using aspect-oriented programming
Proceedings of the 22nd international conference on Software engineering
Symbolic Debugging of Optimized Code
ACM Transactions on Programming Languages and Systems (TOPLAS)
Exploiting the map metaphor in a tool for software evolution
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Aspect-oriented programming: Introduction
Communications of the ACM
Runtime aspect weaving through metaprogramming
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Explaining Synthesized Software
ASE '98 Proceedings of the 13th IEEE international conference on Automated software engineering
Interactive source-level debugging for optimized programs (compilation, high-level)
Interactive source-level debugging for optimized programs (compilation, high-level)
Debugging programs after structure-changing transformation
Debugging programs after structure-changing transformation
Assertions: a personal perspective
Software pioneers
Proceedings of the 3rd international conference on Aspect-oriented software development
An expressive aspect language for system applications with Arachne
Proceedings of the 4th international conference on Aspect-oriented software development
An execution layer for aspect-oriented programming languages
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Tdb: a source-level debugger for dynamically translated programs
Proceedings of the sixth international symposium on Automated analysis-driven debugging
Compilers: Principles, Techniques, and Tools (2nd Edition)
Compilers: Principles, Techniques, and Tools (2nd Edition)
Extending omniscient debugging to support aspect-oriented programming
Proceedings of the 2008 ACM symposium on Applied computing
Zero-Overhead Composable Aspects for .NET
Advances in Software Engineering
The art of the meta-aspect protocol
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Round-Trip Support for Invasive Software Composition Systems
SC '09 Proceedings of the 8th International Conference on Software Composition
Enhancing source-level programming tools with an awareness of transparent program transformations
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Toward debugging programs written in multiple domain specific aspect languages
Proceedings of the sixth annual workshop on Domain-specific aspect languages
A pointcut-based coverage analysis approach for aspect-oriented programs
Information Sciences: an International Journal
A debug interface for debugging multiple domain specific aspect languages
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
A fine-grained debugger for aspect-oriented programming
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
A generic solution for agile run-time inspection middleware
Middleware'11 Proceedings of the 12th ACM/IFIP/USENIX international conference on Middleware
A generic solution for agile run-time inspection middleware
Proceedings of the 12th International Middleware Conference
The potential of omniscient debugging for aspect-oriented programming languages
Proceedings of the 1st workshop on Comprehension of complex systems
A fine-grained, customizable debugger for aspect-oriented programming
Transactions on Aspect-Oriented Software Development X
Hi-index | 0.00 |
The ability to debug programs composed using aspect-oriented programming (AOP) techniques is critical to the adoption of AOP. Nevertheless, many AOP systems lack adequate support for debugging, making it difficult to diagnose faults and understand the program's composition and control flow. We present an AOP debug model that characterizes AOP-specific program composition techniques and AOP-specific program behaviors, and relates them to the AOP-specific faults they induce. We specify debugging criteria that we feel all AOP systems should support and compare how several AOP systems measure up to this ideal. We explain why AOP composition techniques, particularly dynamic and binary weaving, hinder source-level debugging, and how results from related research on debugging optimized code help solve the problem. We also present Wicca, the first dynamic AOP system to support full source-level debugging. We demonstrate how Wicca's powerful interactive debugging features allow a programmer to quickly diagnose faults in the base program behavior or AOP-specific behavior.