FAN - Foundations of dynamic program Analysis
As software systems grow in complexity and execution platforms become more and more sophisticated, it becomes harder and harder for a software engineer to understand, tune, or debug programs. Existing program analysis tools offer limited support, in part because there is a big gap between the abstractions provided by tools and the abstractions employed by software engineers. In this project, we explore a new approach to developing program analysis tools with considerably less programming effort. Our research will address the question: Can we raise the abstraction level for writing dynamic analysis tools, allowing software engineers to rapidly develop custom analysis tools, impairing neither expressiveness nor tool performance?