TL;DR
This paper introduces Lacuna, a tool for automatically detecting and removing JavaScript dead code in web apps, and empirically evaluates its impact on performance, energy, and network usage in mobile environments.
Contribution
Lacuna supports static and dynamic analysis for dead code removal without coding constraints, and the study provides empirical evidence of performance improvements in mobile web apps.
Findings
Dead code removal reduces web app loading time.
Eliminating dead code decreases network data transfer.
Performance and resource usage improve after dead code elimination.
Abstract
Web apps are built by using a combination of HTML, CSS, and JavaScript. While building modern web apps, it is common practice to make use of third-party libraries and frameworks, as to improve developers' productivity and code quality. Alongside these benefits, the adoption of such libraries results in the introduction of JavaScript dead code, i.e., code implementing unused functionalities. The costs for downloading and parsing dead code can negatively contribute to the loading time and resource usage of web apps. The goal of our study is two-fold. First, we present Lacuna, an approach for automatically detecting and eliminating JavaScript dead code from web apps. The proposed approach supports both static and dynamic analyses, it is extensible and can be applied to any JavaScript code base, without imposing constraints on the coding style or on the use of specific JavaScript…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
