Tell HN: We are trying to get tail calls into the WebAssembly standard
Sorry if I miss something obvious, but how is this not solvable by the compiler?I'm a huge functional programming evangelist, but high-level stuff like this does not belong in a low level language bytecode like WASM.Wasm should only care about two things: Security and Performance.With the standard blowing up like crazy we'll get neither. Worse, we'll cemenent the current duopoly of browser engines, because we'll make it (again) so complex that no-one can create an alternative.We shouldn't have GC, Exceptions or Tail calls in WASM, as long as the compiler can provide them.What we should have is multi memory support and memory read permissions, because without them WASM lacks basic security primitives.[1]Reference types maybe. But I've yet to see a convincing argument as to why they are absolutely necessary.Everything else (as long as it can be done by the compiler) is just bloat.1. https://www.usenix.org/conference/usenixsecurity20/presentat...