Sawja: Static Analysis Workshop for Java

Laurent Hubert,Nicolas Barré,Frédéric Besson,Delphine Demange,Thomas Jensen,Vincent Monfort,David Pichardie,Tiphaine Turpin
DOI: https://doi.org/10.1007/978-3-642-18070-5_7
2010-07-20
Abstract:Static analysis is a powerful technique for automatic verification of programs but raises major engineering challenges when developing a full-fledged analyzer for a realistic language such as Java. This paper describes the Sawja library: a static analysis framework fully compliant with Java 6 which provides OCaml modules for efficiently manipulating Java bytecode programs. We present the main features of the library, including (i) efficient functional data-structures for representing program with implicit sharing and lazy parsing, (ii) an intermediate stack-less representation, and (iii) fast computation and manipulation of complete programs.
Programming Languages
What problem does this paper attempt to address?