While WebAssembly is a technology designed for the browser, the team behind it were careful to ensure it could be used outside of the browser, in node, and potentially other contexts. This week we look at a couple of interesting uses of the technology outside of the browser …
Nebulet is a microkernel that implements a WebAssembly “usermode” that runs in Ring 0 - if that makes sense!
In brief, operating systems use Protection Rings as a way to provide various levels of isolation between applications and the resources that they use, in the interest of security. When applications access resources in a different ‘ring’ there is a performance overhead. By relying on WebAssemblies inherent security, nebulet is able to have wasm code run in the same ring s the resources it uses, giving a potential performance boost.
Metal is on it’s way (see this video for reference)
Blockchain is a much-hyped technology, with lots of crazy ideas, but few practical uses. The Energy Web Foundation is one of the few - a really great application of this technology. This post describes how blockchain could be used as a way to manage the energy markets. So what’s this got to do with WebAssembly?
When choosing a language for encoding transactions on the blockchain it is desirable for the language to be fast, simple, secure and easy to validate. These are all features of WebAssembly. Given that WebAssembly is also a compilation target, it gives the potential for encoding contracts in a wide range of familiar programming languages.
And The Rest …
- Hello wasm-pack! - Yet another Rust / WebAssembly tool from the Mozilla team - sweet!
- Droplet Computing are creative a WebAssembly-based product for brining native apps to the browser
And Finally …
Visual Studio Magazine reports that there are indeed other IDEs you can use for WebAssembly! - ROFL