The world of computing is shifting towards software as a service, and with it the number of web applications has grown remarkably. For years, JavaScript has been a fundamental piece of this evolution, and each new development has brought methods to avoid or eliminate essential limitations in the language. WebAssembly is nothing more than the continuation of those methods—a binary format (read: bytecode) that promises more than 20 times the current performance, leading to faster and more efficient code.

WebAssembly: The Binary Platform of Google, Apple, Microsoft, and Mozilla
WebAssembly

JavaScript’s Role and Its Limits

More than one developer would surely swear repeatedly on the virtues of JavaScript. The advances the language has made in recent years have been considerable, and saying that it has become a critical element of today’s web browsers by its own merit might fall short. However, JavaScript is not perfect, and as efficiency and performance parameters become stricter, the need to question our favorite tools arises. In very simple and relaxed terms, one of JavaScript’s drawbacks is that it is a language made for humans, which a system must read and interpret before it can do anything useful with it.

WebAssembly: The Binary Platform of Google, Apple, Microsoft, and Mozilla
Some of our readers may remember the Epic Citadel demo in asm.js. The advances have been enormous... but WebAssembly promises even more.

Granted, JavaScript offers a safe “sandbox” environment to work in, and it is not tied to a specific architecture like x86 or ARM. It has even been said that JavaScript is “the assembly language of the Web”, and given its current state, many agree with that vision, but… bytecode. All those who have longed for a “bytecode for the Web” during this time will see their wishes fulfilled (or so it is believed, at least) through the WebAssembly project, or “wasm” for short. The initiative has considerable size, and engineers from Google, Apple, Microsoft, and Mozilla are involved—names that generally tend to be in different corners of the digital world. The first step will be to bridge the gap with a JavaScript script capable of converting wasm to Mozilla’s popular asm.js, which guarantees a compatibility layer between browsers that do not (yet) support the new format.

Still Very Green

Saying that WebAssembly is very green is no exaggeration. It will take some time before its full specifications are published, but the potential jump in performance (the first prototype is 23 times faster than the typical analysis of asm.js code) makes it worth continuing this development.

Official site: