Changes for version 0.028

  • New feature: • max_ops: This lets you limit the number of operations that can occur before a script is terminated. Optimisations: • Stringification (in JavaScript) now runs up to 5% faster. Thanks to Christian Forster for doing the benchmarking and finding the bottleneck. • Memory usage may go down as much as 10%, depending on what you are doing (the more strings you use, the greater the effect). (The memory leaks are still there, though.) Bug fixes: • Fixed Array.prototype.splice when used on non-array objects such that the length property is always an integer after- wards. (This used to work only on systems with a 32-bit integer and only when the length was a fraction.) • Array.length is now 1, not 0. • Array.prototype.join and .pop no longer die when their ‘this’ values have no length property. • Object.prototype.toLocaleString now calls the toString method on the object instead of calling Object.prototype .toString. Y’know, the spec is really unclear on this point. • Boolean() now simply returns false, instead of a Boo- lean object. • Array.prototype.concat now actually works instead of dying. • Array.prototype.pop now rounds down the length property when it is a fraction.

Documentation

JavaScript types and objects

Modules

JE
Pure-Perl ECMAScript (JavaScript) Engine
JavaScript boolean value
ECMAScript parser and code executor for JE
JavaScript lvalue class
JavaScript null value
JavaScript number value
Base class for all JavaScript objects
JavaScript Array object class
JavaScript Boolean object class
JavaScript Date object class
JavaScript Error object class
JavaScript RangeError object class
JavaScript ReferenceError object class
JavaScript SyntaxError object class
JavaScript TypeError object class
JavaScript URIError object class
JavaScript function class
JavaScript Math object
JavaScript Number object class
JS wrapper for Perl objects
JavaScript regular expression (RegExp object) class
JavaScript String object class
Framework for customising JE's parser
JavaScript scope chain (what makes closures work)
JavaScript string value
JavaScript undefined value
This module is solely for JE's private use.
Pure-Perl ECMAScript (JavaScript) engine

Provides

in lib/JE/Code.pm
in lib/JE/Code.pm
in lib/JE/Code.pm
in lib/JE/Code.pm
in lib/JE/Object/Function.pm
in lib/JE/Object/Function.pm
in lib/JE/Object/Proxy.pm