EMME: a formal tool for ECMAScript Memory Model Evaluation

January 30, 2018 ยท The Ethereal ยท ๐Ÿ› International Conference on Tools and Algorithms for Construction and Analysis of Systems

๐Ÿ”ฎ THE ETHEREAL: The Ethereal
Pure theory โ€” exists on a plane beyond code

"No code URL or promise found in abstract"

Evidence collected by the PWNC Scanner

Authors Cristian Mattarei, Clark Barrett, Shu-yu Guo, Bradley Nelson, Ben Smith, JF Bastien arXiv ID 1801.10140 Category cs.LO: Logic in CS Cross-listed cs.PL Citations 5 Venue International Conference on Tools and Algorithms for Construction and Analysis of Systems Last Checked 5 months ago
Abstract
Nearly all web-based interfaces are written in JavaScript. Given its prevalence, the support for high performance JavaScript code is crucial. The ECMA Technical Committee 39 (TC39) has recently extended the ECMAScript language (i.e., JavaScript) to support shared memory accesses between different threads. The extension is given in terms of a natural language memory model specification. In this paper we describe a formal approach for validating both the memory model and its implementations in various JavaScript engines. We first introduce a formal version of the memory model and report results on checking the model for consistency and other properties. We then introduce our tool, EMME, built on top of the Alloy analyzer, which leverages the model to generate all possible valid executions of a given JavaScript program. Finally, we report results using EMME together with small test programs to analyze industrial JavaScript engines. We show that EMME can find bugs as well as missed opportunities for optimization.
Community shame:
Not yet rated
Community Contributions

Found the code? Know the venue? Think something is wrong? Let us know!

๐Ÿ“œ Similar Papers

In the same crypt โ€” Logic in CS