WebAssembly fandom kills Google's Portable Native Client

Homegrown tech dumped for trendy native code scheme

Google says it will stop supporting Portable Native Client in the first quarter of 2018, with some exceptions, because WebAssembly has become more popular.

Portable Native Client, which according to Google is abbreviated PNaCL and pronounced "pinnacle," was introduced in November, 2013.

It was intended to be an improvement over NaCL, Native Client, which allow developers to run native C and C++ code in a sandboxed space in web applications. NaCL was seen as a way to match the native application experience in the web browser.

PNaCL surpassed its predecessor by allowing developers to generate a single architecture- and OS-independent bitcode executable (pexe) rather than multiple architecture-specific executables (nexe).

But Mozilla rejected NaCL and PNaCL and chose to focus on making JavaScript run faster. The result was asm.js, a subset of JavaScript that plays nicely with ahead-of-time optimization in order to run faster.

It's not fast enough, however. Code written in asm.js creates a parsing bottleneck and thus doesn't perform as well as hoped.

So in June, 2015, WebAssembly, or wasm, emerged. Javascript creator Brendan Eich defined it as "a new binary syntax for low-level safe code." It's intended to co-exist with asm.js initially and to provide a path to the sort of native app performance to which web apps have long aspired.

WebAssembly will allow developers to write C/C++ code that can be integrated with web applications. Any code that relies on speedy execution stands to benefit, including games, cryptographic apps, graphics apps, audio processing, math-heavy apps, and in-memory databases.

The web community has warmed to WebAssembly so Google has decided to go with the flow. "Given the momentum of cross-browser support, we plan to focus our native code efforts on WebAssembly going forward," said software engineer Brad Nelson in a blog post.

"We will remove support for PNaCl in the first quarter of 2018 everywhere except inside Chrome Apps and Extensions." ®

Sponsored: What next after Netezza?




Biting the hand that feeds IT © 1998–2019