Analysis of JavaScript programs: Challenges and research trends

K Sun, S Ryu - ACM Computing Surveys (CSUR), 2017 - dl.acm.org
JavaScript has been a de facto standard language for client-side web programs, and now it
is expanding its territory to general purpose programs. In this article, we classify the client …

JaVerT: JavaScript verification toolchain

J Fragoso Santos, P Maksimović… - Proceedings of the …, 2017 - dl.acm.org
The dynamic nature of JavaScript and its complex semantics make it a difficult target for logic-
based verification. We introduce JaVerT, a semi-automatic JavaScript Verification Toolchain …

Static analysis with demand-driven value refinement

B Stein, BB Nielsen, BYE Chang, A Møller - Proceedings of the ACM on …, 2019 - dl.acm.org
Static analysis tools for JavaScript must strike a delicate balance, achieving the level of
precision required by the most complex features of target programs without incurring …

Automatically deriving JavaScript static analyzers from specifications using meta-level static analysis

J Park, S An, S Ryu - Proceedings of the 30th ACM Joint European …, 2022 - dl.acm.org
JavaScript is one of the most dominant programming languages. However, despite its
popularity, it is a challenging task to correctly understand the behaviors of JavaScript …

Static type and value analysis by abstract interpretation of Python programs with native C libraries

R Monat - 2021 - theses.hal.science
In this thesis, we aim at designing both theoretically and experimentally methods for the
automatic detection of potential bugs in software–or the proof of the absence thereof. This …

Anchor: Fast and Precise Value-flow Analysis for Containers via Memory Orientation

C Wang, W Wang, P Yao, Q Shi, J Zhou… - ACM Transactions on …, 2023 - dl.acm.org
Containers are ubiquitous data structures that support a variety of manipulations on the
elements, inducing the indirect value flows in the program. Tracking value flows through …

Semantic-directed clumping of disjunctive abstract states

H Li, F Berenger, BYE Chang, X Rival - ACM SIGPLAN Notices, 2017 - dl.acm.org
To infer complex structural invariants, shape analyses rely on expressive families of logical
properties. Many such analyses manipulate abstract memory states that consist of …

Value Partitioning: A lightweight approach to relational static analysis for JavaScript

BB Nielsen, A Møller - 34th European Conference on Object …, 2020 - drops.dagstuhl.de
In static analysis of modern JavaScript libraries, relational analysis at key locations is critical
to provide sound and useful results. Prior work addresses this challenge by the use of …

Abstraction of arrays based on non contiguous partitions

J Liu, X Rival - … Workshop on Verification, Model Checking, and …, 2015 - Springer
Array partitioning analyses split arrays into contiguous partitions to infer properties of cell
sets. Such analyses cannot group together non contiguous cells, even when they have …

A simple abstraction of arrays and maps by program translation

D Monniaux, F Alberti - International Static Analysis Symposium, 2015 - Springer
We present an approach for the static analysis of programs handling arrays, with a Galois
connection between the semantics of the array program and semantics of purely scalar …