2007 · 60 citations · 21 references
ComputingComputer ScienceCompilersProgramming LanguagesSoftware EngineeringControl-flow AnalysisData-flow AnalysisStatic AnalysisStatic Code AnalysisType CheckingType SystemsDynamic Code AnalysisDynamic Program AnalysisDynamic Type CheckingError ReportingType Analysis
Programmers using complex libraries and frameworks are faced with the difficult task of ensuring that their implementations comply with complex and informally described rules for proper sequencing of API calls. Recent advances in static and dynamic techniques for checking explicit specifications of program typestate properties have shown promise in addressing this challenge. Unfortunately, static typestate analyses are limited in their scalability and dynamic analyses can suffer from significant run-time overhead. In this paper, we present an approach that exploits information calculated by flow-sensitive static typestate analyses to reformulate the original analysis problem as a residual dynamic typestate analysis. We demonstrate that residual analyses retain the error reporting of unoptimized dynamic analysis while offering the potential for significantly reducing analysis cost
21
Susan L. Graham, Peter B. Kessler, Marshall Kirk McKusick · 1982 · 978 citations
Bug isolation via remote program sampling
Ben Liblit, Alex Aiken, Alice X. Zheng et al. · ACM SIGPLAN Notices · 2003 · 510 citations
A framework for reducing the cost of instrumented code
Matthew Arnold, Barbara G. Ryder · 2001 · 366 citations · Full text