
WebAssembly: Swift, C#, Java and Oxygene in the Browser - dwarfland
https://blogs.remobjects.com/2018/01/12/webassembly-swift-c-java-and-oxygene-in-the-browser/
======
banhfun
It’s still not quite clear to me what new things WASM introduces to using
different languages. Weren’t we already able to transpile any language to JS?

~~~
pjmlp
No, because you are forced to map language semantics into JavaScript
semantics, which is not possible for all features on the source language.

WebAssembly is supposed to eventually turn the browser into a general purpose
VM, with all the necessary features to enable whatever compiler one might
desire to implement.

~~~
saurik
You are assuming a compilation that results in high-level JavaScript code. As
JavaScript is a Turing complete language, you can trivially compile any other
programming language to target it, and we not only have done that a lot but
even made it efficient using asm.js. All WASM is buying us is a more efficient
encoding format that can be parsed more quickly than asm.js.

~~~
esrauch
> All WASM is buying us is a more efficient encoding format that can be parsed
> more quickly than asm.js.

That is only the initial property. WASM is expected to get a number of new
features that aren't expected to come to JS, like actual threads.

------
mayoff
Note that you can't try this out yet unless you have a paid Elements license.

------
poyu
Might help if you link your app `Elements` somewhere in your blog!

