Javascript sandbox online

broken image

Prepack tracks all operations that are performed over abstract values. You can also manually inject abstract values via auxiliary helper functions such as _abstract(). For example, Date.now can return an abstract value. In addition to computing over concrete values, Prepack's interpreter has the ability to operate on abstract values which typically arise from environment interactions. The interpreter has the ability to track and undo all effects, including all object mutations. You can think of the interpreter in Prepack as a clean reference implementation of JavaScript. The interpreter closely follows the ECMAScript 2016 Language Specification, with a focus on correctness and spec conformance.

broken image

Prepack operates at the AST level, using Babel to parse and generate JavaScript source code.Īt the core of Prepack is an almost ECMAScript 5 compatible interpreter - implemented in JavaScript! A few things have to come together to realize Prepack:

broken image