Symbolic execution for JavaScript
File(s)a11-santos.pdf (2.96 MB)
Published version
Author(s)
Faustino Fragoso Femenin Dos Santos, jose
Maksimovic, petar
Grohens, Théotime
Dolby, Julian
Gardner, PA
Type
Conference Paper
Abstract
We present a framework for trustworthy symbolic execution of JavaScripts programs, whose aim is to assist developers in the testing of their code: the developer writes symbolic tests for which the framework provides concrete counter-models. We create the framework following a new, general methodology for designing compositional program analyses for dynamic languages. We prove that the underlying symbolic execution is sound and does not generate false positives. We establish additional trust by using the theory to precisely guide the implementation and by thorough testing. We apply our framework to whole-program symbolic testing of real-world JavaScript libraries and compositional debugging of separation logic specifications of JavaScript programs.
Date Issued
2018-09-03
Date Acceptance
2018-06-25
Citation
PPDP '18 Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, 2018
ISBN
978-1-4503-6441-6
Publisher
ACM
Journal / Book Title
PPDP '18 Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming
Copyright Statement
© 2018 Copyright held by the owner/author(s). This work is licensed under a Creative Commons Attribution 4.0 License.
Sponsor
Engineering & Physical Science Research Council (E
Engineering & Physical Science Research Council (E
Grant Number
EP/K008528/1 - RG65358
EP/K008528/1
Source
20th International Symposium on Principles and Practice of Declarative Programming, PPDP 2018
Publication Status
Published
Start Date
2018-09-03
Finish Date
2018-09-05
Coverage Spatial
Frankfurt am Main, Germany