Enter WebAssembly! A compilation target for languages such as C/C++ that runs on modern browsers. For the first time in history, legacy code bases can now run on the Web at near native speed with the help of the Emscripten compiler. Nevertheless, there are mismatches between the programming paradigms of the desktop and Web world which greatly complicate the porting effort. Some of these include the use of synchronous blocking calls and shared memory on the desktop.
The goals of this session are two-fold. Firstly, the solutions for overcoming the above challenges will be explored in the context of existing Web APIs. Secondly, both the build time and performance implications of porting such a large code base will be addressed as well. As such, this talk will be helpful for developers who aspire to reuse their legacy software on the Web.