Chapter 8: Bundling WebAssembly Using wasm-pack
JavaScript is omnipresent, but being everywhere is both an advantage and a disadvantage. There are many different ecosystems that have various standards and purposes. Building a unique solution for all ecosystems is not practical.
Despite all this, the JavaScript community is doing a wonderful job here. The effort from the community makes JavaScript one of the go-to languages. For a language as versatile as JavaScript, there will be some weird corners (which of course every language has). When you are writing JavaScript, these need extra care and attention.
JavaScript is dynamically typed. This makes it difficult (almost impossible) to avoid runtime exceptions. While TypeScript, Flow, and Elm try to provide a (typed) superset on JavaScript's dynamic types, they cannot completely fix the underlying problem.
For any language to grow, it has to evolve fast, which JavaScript does. Evolving fast without breaking the existing...