The host bindings proposal, which is also in Phase 1, would address a significant limitation of WebAssembly when used in the browser: DOM manipulation. The proposal documentation at https://github.com/WebAssembly/host-bindings/blob/master/proposals/host-bindings/Overview.md provides the following list of goals for this feature:
- Ergonomics: Allow WebAssembly modules to create, pass around, call, and manipulate JavaScript + DOM objects
- Speed: Allow JS/DOM or other host calls to be well optimized
- Platform consistency: Allow WebIDL to be used to annotate Wasm imports/exports (via a tool)
- Incrementalism: Provide a strategy that is polyfillable
Improving WebAssembly's interoperability with JavaScript and Web APIs would simplify the development process considerably. It would also eliminate the need for the "glue" code that tools such as Emscripten provide.