On the contrary, wasm is extremely opinionated for an assembly-level language. I mean, starting with the part where it literally doesn't have goto, and "almost every language" like C++, C#, or really anything else that has such a construct on language level has to rewrite it into (sometimes much less efficient) loops, conditionals, and/or duplicated code. Or we could talk about how code and data are strictly separated in memory, so no JIT and no language features that require it.
Comments
On the contrary, wasm is extremely opinionated for an assembly-level language. I mean, starting with the part where it literally doesn't have goto, and "almost every language" like C++, C#, or really anything else that has such a construct on language level has to rewrite it into (sometimes much less efficient) loops, conditionals, and/or duplicated code. Or we could talk about how code and data are strictly separated in memory, so no JIT and no language features that require it.