Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
110 tokens/sec
GPT-4o
56 tokens/sec
Gemini 2.5 Pro Pro
44 tokens/sec
o3 Pro
6 tokens/sec
GPT-4.1 Pro
47 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

EMME: a formal tool for ECMAScript Memory Model Evaluation (1801.10140v2)

Published 30 Jan 2018 in cs.LO and cs.PL

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.

User Edit Pencil Streamline Icon: https://streamlinehq.com
Authors (6)
  1. Cristian Mattarei (2 papers)
  2. Clark Barrett (86 papers)
  3. Shu-yu Guo (3 papers)
  4. Bradley Nelson (6 papers)
  5. Ben Smith (17 papers)
  6. JF Bastien (1 paper)
Citations (5)

Summary

We haven't generated a summary for this paper yet.