ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague 1, Czech Republic
Fri 10 Jul 2015 18:00 - 18:30 at Bohemia - Analysis II Chair(s): Francesco Logozzo

The numbers and sizes of JavaScript applications are ever growing but static analysis techniques for analyzing large-scale JavaScript applications are not yet ready in a scalable and precise manner. Even when building complex software like compilers and operating systems in JavaScript, developers do not get much benefits from existing static analyzers, which suffer from mutually intermingled problems of scalability and imprecision. In this paper, we present Loop-Sensitive Analysis (LSA) that improves the analysis scalability by enhancing the analysis precision in loops. LSA distinguishes loop iterations as many as needed by automatically choosing loop unrolling numbers during analysis. We formalize LSA in the abstract interpretation framework and prove its soundness and precision theorems using Coq. We evaluate our implementation of LSA using top 5 JavaScript libraries and show that it outperforms the state-of-the-art JavaScript static analyzers in terms of analysis scalability. Our mechanization and implementation of LSA are both publicly available.

Fri 10 Jul

17:00 - 18:30: Research Track - Analysis II at Bohemia
Chair(s): Francesco Logozzo
research-track143654040000017:00 - 17:30
research-track143654220000017:30 - 18:00
research-track143654400000018:00 - 18:30