Yeah, WASM definitely looks promising. It's also worth noting that you can treat Js as a compile target using something like Elm or ClojureScript. These languages have decent semantics that insulate you from a lot of the underlying insanity. For example, stuff like equality works the way you'd expect it to. I've worked on a few large frontend apps with ClojureScript and it was pretty nice as long as you didn't need to interop with the Js ecosystem.
Yeah, WASM definitely looks promising. It's also worth noting that you can treat Js as a compile target using something like Elm or ClojureScript. These languages have decent semantics that insulate you from a lot of the underlying insanity. For example, stuff like equality works the way you'd expect it to. I've worked on a few large frontend apps with ClojureScript and it was pretty nice as long as you didn't need to interop with the Js ecosystem.