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 …
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 …
based verification. We introduce JaVerT, a semi-automatic JavaScript Verification Toolchain …
Static analysis with demand-driven value refinement
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 …
precision required by the most complex features of target programs without incurring …
Automatically deriving JavaScript static analyzers from specifications using meta-level static analysis
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 …
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 …
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
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 …
elements, inducing the indirect value flows in the program. Tracking value flows through …
Semantic-directed clumping of disjunctive abstract states
To infer complex structural invariants, shape analyses rely on expressive families of logical
properties. Many such analyses manipulate abstract memory states that consist of …
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 …
to provide sound and useful results. Prior work addresses this challenge by the use of …
Abstraction of arrays based on non contiguous partitions
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 …
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 …
connection between the semantics of the array program and semantics of purely scalar …