Hacker News new | ask | show | jobs
by kumarvvr 1781 days ago
WebAssembly is a game changer. Why? Because it removes the need for JS, and is more performant. Couple that with a secure sand box to run your apps and you have a new distribution model, somewhere between a full native app and a completely online web app.

You have also removed the shackles of JS and provided an environment to which you can compile and you get the ability to port a lot of libraries and code to the new platform. How does this help? One, you can use other languages to write apps for the web. Two, you can use existing libraries to help develop your app. Three, by having a permission system to access system resources in a secure way, you can incorporate native application features and performance into your web app. Think about stuff like direct printer access, USB access, etc.

1 comments

Now can we have the non-hyped up version?

As someone who doesn't mind the "shackles" of JS, from what I have seen so far, apps written in WebAssembly are up to two times slower than their JS counterparts. DOM access is abysmal, and from what I've seen in the wild, no one has written a serious business critical application using it yet.

What does webassembly do today, and what experience does it provide over javascript? I get the sandbox and distribution, but again, those advantages mostly apply to JS as well.

> from what I've seen in the wild, no one has written a serious business critical application using it yet.

There are lots of such applications, including:

* Figma

* Unity games on the Web

* Google Earth

* AutoCAD

* Aside from entire applications, crucial features in things like Zoom and Google Meet (filters, backgrounds, etc.).

WebAssembly won't replace JavaScript - it's for different things. Wasm lets you port native code to the Web, and it lets that type of code run very fast. That's even without SIMD and multithreading - with those things, wasm is even faster.

I rewrote the core part in C, invoked one command line operation, and now I can call the C like it was JS and the core part is 10x faster.

I'm not even a JS dev but it is certainly literally mind-blowing once you see it.

you can crosscompile from other languages to wasm. so you could have a codebase written in C for example, you crosscompile + bind to a minimal JS part. now your app works in a browser.