Live data from Hacker News

WebAssembly becomes a W3C Recommendation

w3.org

161–170 of 248 posts

Re: WebAssembly becomes a W3C Recommendation

#161

Does anyone have any good success stories with WebAssembly in the actual context of using it on the web? That list of testimonials doesn't seem very inspiring as to whether or not the standard has seen actual production usage to justify being a recommended standard...

We use it for the end-to-end encryption implementation in Riot.im on Web; from memory it sped up the asm.js emscripten based implementation by a factor of about 3x, and also is a (slight) improvement in terms of risk of timing attacks.

Edit: here's the PR for switching from asm.js to WASM, in case anyone's interested: https://github.com/vector-im/riot-web/pull/7385/files apparently it merged in Oct 2018.

Re: WebAssembly becomes a W3C Recommendation

#162
post #17

Now if only we get a good web-oriented Python with a WASM backend, we'll finally be able to throw Javascript where it belongs: into the dustbin of history.

Honest question, in what sense is python a so much better choice for web development? syntax? subjective, and it would also mean all C-likes belong in the dustbin. performance? Why would python, as a language, be significantly more performant? It's just as dynamic. ecosystem? JS community is huge, JS package managers are huge (even though not flawless, but nothing their python counterparts do better) I mean I can sur…

Was going to ask in the main thread but perhaps here is a better place. For someone just starting with programming, but targetting WASM, which would be a good first programming language? Java?

In my particular case, I've been learning Python for Data Analysis for about one year, and a few months of Haskell (love Haskell so far, but my interest/job is related to data analysis and web dev). I've heard bad things about Python as first programming lang (weakly typed and bad OOP implementation).

Re: WebAssembly becomes a W3C Recommendation

#163

Earlier quoted context omitted.

Without defining a standard set of abstractions around operating system resources it is pretty far from competitive with Java and more closely related to something like LLVM bitcode.

LLVM bitcode is not cross platform.

It is very close and with a standardized ABI it can be (that is how it was slightly modified to be used in Google's Portable Native Client). It is much more similar to WASM than Java byte code.

https://www.chromium.org/nativeclient/pnacl/introduction-to-...

Re: WebAssembly becomes a W3C Recommendation

#164

Earlier quoted context omitted.

Good questions. WASM at this point seems more a locus of JS hate than anything practical. To create something cool, novel, and useful should be the goal, not avoid or use a certain language.

There's a pretty stark difference between those working in and with WASM, and people commenting on the sidelines. Almost everyone involved with WASM itself sees it as complimentary, and explicitly is not trying to "kill javascript." Random commenters on the internet do say this a lot though.

Cool. Thanks

Re: WebAssembly becomes a W3C Recommendation

#165
post #139

Earlier quoted context omitted.

I think that's underselling the talk. Apart from the very enjoyable presentation, it makes valuable insights. The talk isn't trying to sell itself as 100% original. It makes reference to asm.js and a game demo that already existed at the time of the talk as well as repl.it. Despite that, I do think it makes a unique insight that even though JavaScript is ubiquitous, it will NOT be the language that future languages c…

> Moreover this bytecode has the potential to entirely supplant native code and can do so with equal or better performance. I interpreted that part of the talk as hyperbole and sarcasm. It was saying that programmers will be so far removed from how computers work that they'll happily program against a model that has five layers of abstraction that simply serve to provide the original interface of the bottom layer. By…

I didn't get that understanding at all. The insight is that by going bytecode only you can rethink your security model. You can do things that you can't do safely if you allow native code to run.

It's swapping out one abstract model for another, just that we are so used to the current abstract model that we don't perceive it as one.

Re: WebAssembly becomes a W3C Recommendation

#166
post #92

Earlier quoted context omitted.

Show me a WASM VM that approaches the OpenJDK JVM in maturity and capabilities. Until such a creation comes to be, the OpenJDK JVM will continue to thrive.

Ironically, GraalVM might end up being one of the better WASM VM: https://medium.com/graalvm/announcing-graalwasm-a-webassembl...

True, but GraalVM is based on the OpenJDK / OracleJDK JVM:

"GraalVM Community Editions are based on OpenJDK version 1.8.0_232 and on OpenJDK version 11.0.5. GraalVM Enterprise Editions are based on Oracle Java version 1.8.0_231 and on Oracle Java version 11.0.5." Source: https://www.graalvm.org/docs/getting-started/

So, it's still the OpenJDK JVM underneath.

Re: WebAssembly becomes a W3C Recommendation

#167

It's really uncanny how Gary Bernhardt predicted it all [0] a few years ago. [0] https://www.destroyallsoftware.com/talks/the-birth-and-death...

I think we're still waiting for a WASM-only OS, though :)

I wonder if Cloudflare will do something like this given they want to run WASM in their Edge Servers.

Re: WebAssembly becomes a W3C Recommendation

#168

Such hate for JavaScript. To say JS needs to lose for you to win says more about you than it does JS. Just a thought. I see a world where there are many winners and one where WASM and JS and whatever you want can fulfill their need where needed.

This seems like a straw man; I’ve seen relatively little JS hate in this thread. Unless you’re considering WASM’s progress (or existence) to be an attack on JS? I personally don’t see what is wrong with having other choices for web development.

Yea maybe I see this because I feel threatened in some way. Not desirable!

Re: WebAssembly becomes a W3C Recommendation

#169
post #139

Earlier quoted context omitted.

I think that's underselling the talk. Apart from the very enjoyable presentation, it makes valuable insights. The talk isn't trying to sell itself as 100% original. It makes reference to asm.js and a game demo that already existed at the time of the talk as well as repl.it. Despite that, I do think it makes a unique insight that even though JavaScript is ubiquitous, it will NOT be the language that future languages c…

> Moreover this bytecode has the potential to entirely supplant native code and can do so with equal or better performance. I interpreted that part of the talk as hyperbole and sarcasm. It was saying that programmers will be so far removed from how computers work that they'll happily program against a model that has five layers of abstraction that simply serve to provide the original interface of the bottom layer. By…

There's also a lot of sticky points at the bottom of the stack that lead towards native solutions, starting with memory management and basic I/O functionality. Nobody wants to code directly against the hardware for very long, so you end up with a driver, and then driver and resource management, and then an operating system of some kind. Even on the early microcomputers it was the case that you have a boot ROM of some sort and would code against that for most tasks.

With WASM you have the same kind of thing but the added wrinkle of the browser-based I/O being a different set of "basic abstractions" from what you get in libc, and every solution that bridges the gap being a bit of a hack. Being bytecode doesn't really change the fact that you still have to deal with the resulting dependencies at some level.

Re: WebAssembly becomes a W3C Recommendation

#170
post #72
post #53

Earlier quoted context omitted.

I think I remember reading something on HN about some kind of tool for running WASM in some kind of kernel module to speed up app performance. EDIT: here it is: https://medium.com/wasmer/running-webassembly-on-the-kernel-...

I remember something like that being posted too; I think this is it? https://github.com/nebulet/nebulet

Nebulet is a great piece of engineering! <3
Post reply on HN