Concerto: a framework for combined concrete and abstract interpretation
Abstract
Abstract interpretation promises sound but computable static summarization of program behavior. However, modern software engineering practices pose significant challenges to this vision, specifically the extensive use of frameworks and complex libraries. Frameworks heavily use reflection, metaprogramming, and multiple layers of abstraction, all of which confound even state-of-the-art abstract interpreters. Sound but conservative analysis of frameworks is impractically imprecise, and unsoundly ignoring reflection and metaprogramming is untenable given the prevalence of these features. Manually modeling framework behaviors offers excellent precision, at the cost of immense effort by the tool designer.
Document Details
- Document Type
- Pub Defense Publication
- Publication Date
- Jan 02, 2019
- Source ID
- 10.1145/3290356
Entities
People
- Dan Grossman
- John Toman
Organizations
- Defense Advanced Research Projects Agency
- University of Washington