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).
It's not fast enough, however. Code written in asm.js creates a parsing bottleneck and thus doesn't perform as well as hoped.
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." ®