> though we can hope for salvation from Dart.
Yeah right, a language with explicit typing, the null problem and an unsound type system. Dart is broken, and unlike JavaScript, it's not even widely supported.
If you actually want a sensible language for web development, try js_of_ocaml.