Esprima and its scalable parsing

.

It’s lunch time. You enter your favorite cafe and place an order for your beloved sandwich. Nobody else is there so your tasty meal is ready in some minutes. The next day, the same situation. This time, there are few other customers in front of you. You wonder if your waiting time (for the sandwich… Read more »

Pure headless PhantomJS (no X11 or Xvfb)

.

Starting from Ghost Flower, the recent PhantomJS 1.5 release, the standard build for Linux is pure headless without X11. Even Xvfb is not needed. That means you can compile and use PhantomJS in a system without any GUI at all. This would be really useful in some setup such as continuous integration systems, web service… Read more »

The evolution of PhantomJS build workflow

.

The above text cloud is created using Fotowall. Starting from the recently released PhantomJS version 1.5, also known as Ghost Flower, a minimalistic version of Qt library is bundled into its source tree. This blog post shows some history and reasoning behind it. If you just want to use PhantomJS, nothing changes for you. However,… Read more »

Ghost Flower

.

By Stan Shebs (Own work), CC-BY-SA-3.0, via Wikimedia Commons. Few days ago we experienced the equinox. That also means a new release of PhantomJS, the scriptable headless WebKit. This time we hit version 1.5 under the code name Ghost Flower. You are recommended to check the full Release Notes, the notable highlights are pure headless… Read more »

JavaScript code coverage and Esprima

.

A common approach to implement code coverage analysis for JavaScript code is by adding extra instrumentation to the code. Since the instrument function is also executed by the JavaScript engine, this gives additional information as to which part of the code is being executed. A naive trick is to wrap the instrumentation line-by-line. A better… Read more »

Most popular JavaScript keywords

.

Most popular keywords? The quick short answer is: it depends. While investigating the proposal for a faster isKeyword() function in Esprima, I decided to see the frequency of JavaScript keywords appearing in most common libraries. Esprima already has a selection of popular libraries as part of its comprehensive benchmark suite. When I eliminated the duplicated… Read more »