Write a Blog >>
Mon 19 Jun 2017 11:00 - 11:30 at Vertex WS218 - Morning Chair(s): Julian Dolby

The dynamic nature of JavaScript, together with its complex semantics, makes it a difficult target for logic-based verification techniques. We present JaVerT: a semi-automatic verification tool chain for JavaScript based on separation logic. We target functionally correct specifications of critical JavaScript software, in particular focusing on small Node.js libraries that have high usability: for example, those describing well-known data structures, such as a priority queue. JaVerT provides a wide variety of built-in abstractions so that our specifications are straightforward, despite the underlying complexity of the JavaScript semantics.

The talk will consist of a demo of JaVerT, illustrating how it can be used to specify and verify a JavaScript priority queue implementation. It will showcase the abstractions provided by JaVerT for reasoning about the JavaScript semantics, with an emphasis on objects, prototype chains, and function closures, as well as the infrastructure for supporting arbitrary user-defined recursive predicates.

Talk (JaVerT.pdf)917KiB

Mon 19 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change