If. All languages you listed need GC, which won't be in the initial version of WebAssembly. In other words, you won't be able to compile Ruby to WebAssembly any time soon.
You will be able to compile Ruby implementation to WebAssembly, but you can already compile that to asm.js. That is different from compiling Ruby to WebAssembly.
Yes and no. You can have native VM for running WebAssembly's Ruby VM... Oh my god, that sounds horrible as I wrote it.. but it can certainly be better than asm.js.
JIT (generating code in memory as data and jumping to it) is one of a few things not very well supported in asm.js and presumably the initial version of WebAssembly, so Dart probably can't use the initial version and should wait.