> WebAssembly is different. WebAssembly brings every language to the web. Flash didn't.
The problem with Flash was not that it only supported a single language. The problem with Flash is that it opted out of the web architecture because they only wanted your browser window to be a surface for an executable to draw into.
> But WebAssembly applications can also manipulate the DOM like JavaScript.
Flash could do that too. Virtually nobody bothered.
> The problem with Flash is that it opted out of the web architecture
WebAssembly doesn't. WebAssembly is part of the web's architecture. It has been for 8 years. You've doubtless run WebAssembly without even realizing it.
I know how WebAssembly works. You don’t need to explain it to me.
Take a look at the article. It’s specifically advocating for:
> So throw out all the web standards. Make a browser that just runs WASM blobs, and gives them a surface to use
And no, WebAssembly isn’t different. I just opened one of the examples you provided and tried to right-click to inspect element. Nothing happened. When I inspected the source a different way, all I found was an SVG for the logo and a JavaScript file to load the binary. When I inspected the DOM, all I found was a `<canvas>` the executable code draws into.
This is exactly what I was complaining about:
> The problem with Flash is that it opted out of the web architecture because they only wanted your browser window to be a surface for an executable to draw into.
> And no, WebAssembly isn’t different. I just opened one of the examples you provided and tried to right-click to inspect element. Nothing happened. When I inspected the source a different way, all I found was an SVG for the logo and a JavaScript file to load the binary. When I inspected the DOM, all I found was a `<canvas>` the executable code draws into.
What does that have to do with running the application? What user is going to inspect the elements of a web page? No end user will. Developers will, but that's got nothing to do with running the application.
You can always go ahead and disassemble the .wasm file just like any other executable format. Here are some tools: https://github.com/WebAssembly/wabt
If you're worried about understanding how an application works, remember that most of it is on the server side anyway. You won't have access to that. And if anything, WebAssembly puts more of it on the client side.
It’s formally part of the web’s architecture, but it is bolted on and violates the fundamental principles underlying the web’s architecture. It’s much like a worse JavaScript in that way.
The problem with Flash was not that it only supported a single language. The problem with Flash is that it opted out of the web architecture because they only wanted your browser window to be a surface for an executable to draw into.
> But WebAssembly applications can also manipulate the DOM like JavaScript.
Flash could do that too. Virtually nobody bothered.