Live data from Hacker News

Bringing the web up to speed with WebAssembly

blog.acolyer.org

91–100 of 172 posts

Re: Bringing the web up to speed with WebAssembly

#91
post #18

Earlier quoted context omitted.

I am also very interested in learning more about using WebAssembly as a primary deployment target for desktop applications. Recently when I was working on a cross-platform C++ application using Qt and boost, a major pain point was in understanding the different packaging conventions of the operating systems. If WebAssembly takes off, and is available on Windows, macOS, and Linux, would it be possible for me to build…

In theory, yes, but WebAssembly current has put little effort on standardizing packaging and ABIs. That work is in progress here: https://github.com/WebAssembly/tool-conventions but is still very early. You'd then need each of these platform exposing a standard set of imports to WebAssembly binaries because from the compiler's perspective WebAssembly looks like an OS with a virtual ISA, so these embedder imports are…

I'm actually working on an effort in this space. Specifically we're at the point where it's time to stand up a libc in a non web embedding.

If anyone is interested in the effort they should let me know.

Re: Bringing the web up to speed with WebAssembly

#92
post #18

Earlier quoted context omitted.

I am also very interested in learning more about using WebAssembly as a primary deployment target for desktop applications. Recently when I was working on a cross-platform C++ application using Qt and boost, a major pain point was in understanding the different packaging conventions of the operating systems. If WebAssembly takes off, and is available on Windows, macOS, and Linux, would it be possible for me to build…

WebAssembly itself is just (more or less) an instruction set, not a complete runtime platform. It doesn't define APIs for rendering, audio, input, filesystem access, networking, etc... Electron provides all that, but at the very high cost of shipping a complete browser runtime with your app.

Oh don't you worry, that will come and we'll be free of that ugly JavaScript thing.

Re: Bringing the web up to speed with WebAssembly

#94

WASM has the potential to change the world... a thought: while WASM will initially appear in compute-intense functions in web apps, it has the potential to be a true "Common Language Runtime". It may become the future platform that native, dekstop apps run on. This could be a good thing, if done correctly: 1. Desktop apps have a common, safe runtime upon which they run, and the packages can be easily distributed (and…

We had that in the 90s. We called it Java.

It was so ugly

Re: Bringing the web up to speed with WebAssembly

#95
post #46

Earlier quoted context omitted.

Java only had one closed source implementation and had many security issues during its life. It wasn't designed for proper sandboxing and for having multiple implementations in the first place. And its communication with the rest of the browser was done through a slow and ugly channel (IIRC everything had to be sent around as strings).

And how much of that is true today?

It's still ugly

Re: Bringing the web up to speed with WebAssembly

#96

WASM has the potential to change the world... a thought: while WASM will initially appear in compute-intense functions in web apps, it has the potential to be a true "Common Language Runtime". It may become the future platform that native, dekstop apps run on. This could be a good thing, if done correctly: 1. Desktop apps have a common, safe runtime upon which they run, and the packages can be easily distributed (and…

My first thought reading the specification was '6 months before there's silicon that runs the bytecode directly.'

No really. WASM is based on a stack machine and not a register machine. On the other hand there was PicoJava [1] and there is Jazelle [2]. So, maybe...

[1] https://en.wikipedia.org/wiki/PicoJava

[2] https://en.wikipedia.org/wiki/Jazelle

Re: Bringing the web up to speed with WebAssembly

#97

WASM has the potential to change the world... a thought: while WASM will initially appear in compute-intense functions in web apps, it has the potential to be a true "Common Language Runtime". It may become the future platform that native, dekstop apps run on. This could be a good thing, if done correctly: 1. Desktop apps have a common, safe runtime upon which they run, and the packages can be easily distributed (and…

We had that in the 90s. We called it Java.

After some time you realize: The hype train is traveling in a circle.

Re: Bringing the web up to speed with WebAssembly

#99
post #48

I suspect that the use cases for WebAssembly will be something like this: - - 60% ad and tracking obfuscation - 20% annoying scrolling and transitions - 10% hostile code

It's frustrating to watch because it feels like we've learned nothing from the past 10+ years of web development.

We've learned JavaScript is a toy
Post reply on HN