WebAssembly has been adopted by W3C and is now an official web standard. This doesn’t mean it is ready to use, however.
An alternative would have been to adopt, say, the Java VM and take advantage of the existing compilers and tools. I can see why the web community might not have wanted to use anything connected with Oracle’s approach to Java, but there are alternatives.
Instead what we have is a brand new ecosystem that has to be populated with new tools and at the moment there aren’t very many and they are difficult to use. It is clearly going to be some time yet before WebAssembly goes mainstream.
To be clear – you aren’t going to be writing your code in WebAssembly. You are going to be writing in Python, Julia, R or C and using a compiler to create WebAssembly. The problem is that at the moment the compilers and the associated infrastructure isn’t well developed enough for you to get a junior programmer to do the job. Ultimately it has to get this simple and this polished for WebAssembly to be widely used.
It is not just the browser that WebAssembly hopes to shake up. The idea is to extend the standard to include environments that WebAssembly can be run under. So I guess the idea is to make it a viable target for every language on the planet, running on every platform on the planet. Sounds unlikely to me.
- World Wide Web Consortium (W3C) brings a new language to the Web as WebAssembly becomes a W3C Recommendation