A tested semantics for getters, setters, and eval in JavaScript
a programmer ' s reduction semantics for classes and mixins .