JE reviews

RSS | Module Info

JE (0.066) *****

it just works. Fantastic!

JE (0.066) *****

Very nice Engine implementation.

JE (0.038) ****

This is a serious effort to write a JavaScript Engine in Perl, and I'm glad that such a project exists. However, it failed two of my initial evaluations, including a basic loading of jQuery 1.3.2. I filed bug reports about both cases. It is also a known issue that is slow, with the trade-off that it has the hack-ability and portability of being in pure Perl.

JE (0.032) *****

JE is a JavaScript engine written in Perl. It parses and executes JavaScript, and allows communication between the JavaScript and Perl. Impressively, it can parse big chunks of JavaScript without error and execute the parsed code correctly. This gives one way to run unit tests of JavaScript code from a Perl script without having to fiddle around with a browser, which is quite handy if you need to program something complex in JavaScript.

On the negative side, as the documentation states, it is fairly slow. JE doesn't know anything about things like document.getElementByID and other such DOM stuff, so it won't work on most of the JavaScript on the world-wide web. I don't know if there are plans to make it work with parsed documents in the future, but the author has also written an HTML::DOM module.

The documentation is not particularly nice but it is good enough to get you started writing stuff quickly. The interface is also fairly easy to understand. Parts of the module are clearly unfinished, with error messages sometimes popping up from obscure line numbers inside the source code (this only happened when parsing incorrect JavaScript though).

[Note to the other reviewer: Regarding the name "JE", my guess is that due to the many sub-modules, the author decided to pick a very short name in order not to have to type such incredibly long things as JavaScript::Engine::Object::Error::ReferenceError. It also goes by the alternative name of "JavaScript::Engine" if you prefer.]

1 hidden unhelpful review