Write a Blog >>
ESEC/FSE 2021
Thu 19 - Sat 28 August 2021 Clowdr Platform
Wed 25 Aug 2021 16:20 - 16:30 - Analysis—Programming Languages Chair(s): Santanu Dash, Michael Pradel
Thu 26 Aug 2021 04:20 - 04:30 - Analysis—Programming Languages Chair(s): Ramy Shahin

JavaScript has become one of the most widely used programming languages for web development, server-side programming, and even micro-controllers for IoT. However, its extremely functional and dynamic features degrade the performance and precision of static analysis. Moreover, the variety of built-in functions and host environments requires excessive manual modeling of their behaviors. To alleviate these problems, researchers have proposed various ways to leverage dynamic analysis during JavaScript static analysis. However, they do not fully utilize the high performance of dynamic analysis and often sacrifice the soundness of static analysis.
In this paper, we present dynamic shortcuts, a new technique to flexibly switch between abstract and concrete execution during JavaScript static analysis in a sound way. It can significantly improve the analysis performance and precision by using highly-optimized commercial JavaScript engines and lessen the modeling efforts for opaque code. We actualize the technique via $\text{SAFE}\textsf{DS}$, an extended combination of $\text{SAFE}$ and Jalangi, a static analyzer and a dynamic analyzer, respectively. We evaluated $\text{SAFE}\textsf{DS}$ using 269 official tests of Lodash 4 library. Our experiment shows that $\text{SAFE}_\textsf{DS}$ is 7.81x faster than the baseline static analyzer, and it improves the precision to reduce failed assertions by 12.31% on average for 22 opaque functions.

Wed 25 Aug

Displayed time zone: Athens change

16:00 - 17:00
Analysis—Programming LanguagesResearch Papers / Industry Papers +12h
Chair(s): Santanu Dash University of Surrey, Michael Pradel University of Stuttgart
16:00
10m
Paper
Automated Code Transformation for Context Propagation in Go
Industry Papers
Adam Welc Uber Technologies
DOI
16:10
10m
Paper
Toward Efficient Interactions between Python and Native Libraries
Research Papers
Jialiang Tan College of William & Mary, Yu Chen College of William & Mary, Zhenming Liu College of William & Mary, Bin Ren College of William & Mary, Shuaiwen Leon Song University of Sydney, Xipeng Shen North Carolina State University, Xu Liu North Carolina State University, Oak Ridge National Laboratory, USA
DOI
16:20
10m
Paper
Accelerating JavaScript Static Analysis via Dynamic ShortcutsArtifacts AvailableArtifacts Reusable
Research Papers
DOI
16:30
30m
Live Q&A
Q&A (Analysis—Programming Languages)
Research Papers

Thu 26 Aug

Displayed time zone: Athens change

04:00 - 05:00
Analysis—Programming LanguagesResearch Papers / Industry Papers
Chair(s): Ramy Shahin University of Toronto
04:00
10m
Paper
Automated Code Transformation for Context Propagation in Go
Industry Papers
Adam Welc Uber Technologies
DOI
04:10
10m
Paper
Toward Efficient Interactions between Python and Native Libraries
Research Papers
Jialiang Tan College of William & Mary, Yu Chen College of William & Mary, Zhenming Liu College of William & Mary, Bin Ren College of William & Mary, Shuaiwen Leon Song University of Sydney, Xipeng Shen North Carolina State University, Xu Liu North Carolina State University, Oak Ridge National Laboratory, USA
DOI
04:20
10m
Paper
Accelerating JavaScript Static Analysis via Dynamic ShortcutsArtifacts AvailableArtifacts Reusable
Research Papers
DOI
04:30
30m
Live Q&A
Q&A (Analysis—Programming Languages)
Research Papers