BT

Your opinion matters! Please fill in the InfoQ Survey!

Browser Vendors Start Shipping WebAssembly by Default

| by David Iffland Follow 3 Followers on Mar 10, 2017. Estimated reading time: 1 minute |

The browser vendors working on WebAssembly have reached a "consensus" on an initial implementation set, allowing browsers to ship it on by default.

Back in November 2016, WebAssembly reached the browser preview stage where the major browsers had a version available to test behind a flag. The ensuing months allowed browser vendors to refine and agree upon a JavaScript API and a binary format. The announcement post draws a line in the WebAssembly sand:

[The browser vendors] have reached consensus that the design of the initial WebAssembly API and binary format is complete to the extent that no further design work is possible without implementation experience and significant usage.

This marks the end of the Browser Preview and signals that browsers can begin shipping WebAssembly on-by-default. From this point forward, future features will be designed to ensure backwards compatibility.

While this is an important milestone, the initial implementation won't immediately result in significant uptake by developers. There's a lot of potential, but language support is currently limited to C/C++, along with early support from Rust. There is no garbage collector provided, so languages like C# and Java wouldn't work without shipping their own runtime as part of the binary. There are discussions, however, on adding garbage collection in the future.

In addition, WebAssembly currently lacks important features such as DOM interaction. Mozilla Engineer Lin Clark writes that "lots of features are expected", but that those features need to "go through the specification process." The WebAssembly Community Group has already come up with a list of future features for a new W3C Working Group to start with. There's no timeline for when these features may become available.

In a series of posts, Clark writes about what makes WebAssembly fast, and that its introduction may be an "inflection point" that leads to unknown performance gains and the ability to take on new challenges.

In the coming years, browser vendors will continue to improve the interaction between JavaScript and WebAssembly just as they continue to improve the performance of the JIT compilers.

Firefox 52 — available now — has WebAssembly enabled and Chrome will enable it by default in version 57 set for release on March 14th, 2017.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT