4 ms·
And what are those exactly? JVM and CLR bytecode is totally platform agnostic and both support many languages without trouble. Apparently they aren't cool anym
by throwawaysbdi 10y ago
And what are those exactly? JVM and CLR bytecode is totally platform agnostic and both support many languages without trouble.
Apparently they aren't cool anymore so we need to spend another few thousand man years building another system in their image
- Rusky 10y agoBut they don't support the primary reason for asm.js and thus wasm- C and C++. They also, as you note in another comment, do not have the appropriate security model for web apps.
- pjmlp 10y agoI guess you never did any .NET development. .NET 1.x introduced Managed C++. .NET 2.0 replaced Managed C++ with C++/CLI due to feedback from C++ devs, regarding keywords and how GC types were declared. C++/CLI was submitted to ANSI C++ as standard proposal. UWP introduced C++/CX, although it does compile to native code and interoperates with .NET Native instead. Or Flash for that matter, which had a C++ compiler called FlasCC.
- Rusky 10y agoI am well aware of managed C++ and C++/CLI. They are not the same language as native C++, in the sense that matters for WebAssembly's target audience. C++/CX is closer, but a) also still not the same language and b) doesn't run on the CLR, so isn't an argument for replacing wasm with IL.
- rubber_duck 10y agoYou seriously don't see the difference between WASM and CLR/JVM ? JVM/CLR are high level and need to know about things like types/object model - this lets them do GC more efficiently and fancy stuff like reflection, etc. at WASM is assembly level just sandboxed and portable - direct memory access and basic instructions - it doesn't even have GC right now. They are only superficially similar.
- gcr 10y agoSo here's a thought: how is this different from PNaCL and friends?
- dragonwriter 10y agoPNaCl, IIRC, doesn't expose web APIs, but requires message-passing to and from associated JS for that.
- rubber_duck 10y agoConceptually not very different, practically PNaCL has a problem of being an ad-hoc standard based on LLVM - WASM fixes that.
- dragonwriter 10y ago> And what are those exactly? Providing a lower-level platform; directly exposing open web APIs. The first may not seem like an advantage, but it means more flexibility in the higher level systems (including runtimes like JVM or CLR, if you wanted to) that can be usefully run on top of it.