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 on separation logic. To specify JavaScript programs, we design abstractions that capture its key heap structures (e.g. prototype chains, function closures), allowing the user to write clear and succinct specifications with minimal knowledge of the JavaScript internals. To verify JavaScript programs, we develop JaVerT, a verification pipeline consisting of: JS-2-JSIL, a well-tested compiler from JavaScript to JSIL, an intermediate goto language capturing the fundamental dynamic features of JavaScript; JSIL Verify, a semi-automatic verification tool based on a sound JSIL separation logic; and verified axiomatic specifications of the JavaScript internal functions. Using JaVerT, we verify functional correctness properties of data-structure libraries (key-value map, priority queue) written in object-oriented style; operations on data structures such as BSTs and lists; examples illustrating function closures; and test cases from the official ECMAScript test suite. The verification times suggest that reasoning about larger, more complex code using JaVerT is feasible.
Fri 12 JanDisplayed time zone: Tijuana, Baja California change
10:30 - 12:10 | |||
10:30 25mTalk | Correctness of Speculative Optimizations with Dynamic Deoptimization Research Papers Olivier Flückiger Northeastern University, USA, Gabriel Scherer Northeastern University, USA, Ming-Ho Yee Northeastern University, USA, Aviral Goel Northeastern University, Amal Ahmed Northeastern University, USA, Jan Vitek Northeastern University DOI Pre-print | ||
10:55 25mTalk | JaVerT: JavaScript Verification Toolchain Research Papers José Fragoso Santos Imperial College London, Petar Maksimović Imperial College London, Daiva Naudžiūnienė Imperial College London, Thomas Wood Imperial College London, Philippa Gardner Imperial College London | ||
11:20 25mTalk | Soft Contract Verification for Higher-order Stateful Programs Research Papers Phúc C. Nguyễn University of Maryland, Thomas Gilray University of Maryland, Sam Tobin-Hochstadt Indiana University, David Van Horn University of Maryland | ||
11:45 25mTalk | Collapsing Towers of Interpreters Research Papers |