Next Article in Journal
Design of the Input and Output Filter for a Matrix Converter Using Evolutionary Techniques
Next Article in Special Issue
An Abstraction Technique for Verifying Shared-Memory Concurrency
Previous Article in Journal
PRANAS: A Process Analytics System Based on Process Warehouse and Cube for Supply Chain Management
Article

Static Analysis for ECMAScript String Manipulation Programs

1
Department of Computer Science, University of Verona, 37134 Verona, Italy
2
Ca’ Foscari University, Department of Environmental Sciences, Informatics and Statistics, 30170 Venice, Italy
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(10), 3525; https://doi.org/10.3390/app10103525
Received: 25 April 2020 / Revised: 14 May 2020 / Accepted: 16 May 2020 / Published: 20 May 2020
(This article belongs to the Special Issue Static Analysis Techniques: Recent Advances and New Horizons)
In recent years, dynamic languages, such as JavaScript or Python, have been increasingly used in a wide range of fields and applications. Their tricky and misunderstood behaviors pose a great challenge for static analysis of these languages. A key aspect of any dynamic language program is the multiple usage of strings, since they can be implicitly converted to another type value, transformed by string-to-code primitives or used to access an object-property. Unfortunately, string analyses for dynamic languages still lack precision and do not take into account some important string features. In this scenario, more precise string analyses become a necessity. The goal of this paper is to place a first step for precisely handling dynamic language string features. In particular, we propose a new abstract domain approximating strings as finite state automata and an abstract interpretation-based static analysis for the most common string manipulating operations provided by the ECMAScript specification. The proposed analysis comes with a prototype static analyzer implementation for an imperative string manipulating language, allowing us to show and evaluate the improved precision of the proposed analysis. View Full-Text
Keywords: string static analysis; abstract interpretation; abstract semantics string static analysis; abstract interpretation; abstract semantics
Show Figures

Figure 1

MDPI and ACS Style

Arceri, V.; Mastroeni, I.; Xu, S. Static Analysis for ECMAScript String Manipulation Programs. Appl. Sci. 2020, 10, 3525. https://doi.org/10.3390/app10103525

AMA Style

Arceri V, Mastroeni I, Xu S. Static Analysis for ECMAScript String Manipulation Programs. Applied Sciences. 2020; 10(10):3525. https://doi.org/10.3390/app10103525

Chicago/Turabian Style

Arceri, Vincenzo, Isabella Mastroeni, and Sunyi Xu. 2020. "Static Analysis for ECMAScript String Manipulation Programs" Applied Sciences 10, no. 10: 3525. https://doi.org/10.3390/app10103525

Find Other Styles
Note that from the first issue of 2016, MDPI journals use article numbers instead of page numbers. See further details here.

Article Access Map by Country/Region

1
Back to TopTop