The Blazor project, which allow you to run .NET code within a WebAssembly VM (currently in interpreted mode, Blazor compiles the .NET runtime to wasm), has gone from being an experiment to an officially part of the .NET roadmap in a very short space of time. WebAssembly is now signficant part of the .NET strategy - from this announcement, “There will be just one .NET going forward, and you will be able to use it to target Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly and more”
This blog post takes a simple “Hello World” app, compiles it to wasm using EmScripten, then runs it with Wasmer - a standalone WebAssembly runtime. The next step uses OPS to wrap this in a Unikernel, a specialised bare-bones VM that only includes the system libraries required for the code / runtime it is hosting. Cool!
Yes, that’s right, WebAssembly for Web Developers - fans of Wasmer, Ethereum and Edge-Computing please look away! This is a general introduction to WebAssembly from Google IO 2019.
This project is a standalone wasm runtime written in C. Currently it interprets wasm modules, but AOT compilation is on the roadmap. With this project coming from Intel, it is almost certainly targeted at running WebAssembly on embedded / IoT devices.