this post was submitted on 27 Dec 2023
725 points (98.5% liked)

Programmer Humor

19588 readers
869 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 15 points 10 months ago (2 children)

Even webassembly needs a JS stub loader right now. I still can't believe that's a requirement.

[–] [email protected] 3 points 10 months ago (1 children)

Sure, but you can get frameworks that generate that for you. I've written whole webpages in WASM without writing any JS.

You don't get around reading JS documentation, though. Especially the DOM API is just documented as JS, and you basically hope that your framework makes it obvious enough how to write that in your non-JS language of choice.

[–] [email protected] 5 points 10 months ago (1 children)

This is exactly the reason why I can't believe that was ever a requirement. I would have crazy respect for webassembly if it could stand on it's own as it would allow people to completely move away from JS, but if JS is still in the stack in any way it will introduce a (even if it is minimal) compatibility and maintenance cost in the long run.

[–] [email protected] 3 points 10 months ago

I used to think so, too, but on the one hand, the DOM API is absolutely massive. Going through the standardization, implementation and documentation process another time would take decades.

And on the other hand, a language-agnostic API in WebAssembly would mean specifying it WebAssembly itself. And well, it's Assembly-like, so what's currently a single line for calling a JS function would turn into tens of lines of low-level code.

Ultimately, you'd want code from some other high-level language to give you a summary of how you may need to call your language-specific wrapper. In practice, that's likely even worse than translating it from JS, because the high-level call isn't standardized.

[–] [email protected] 2 points 10 months ago (1 children)

i believe they plan to remove that requirement? at least i know they are trying to use a native wasm<->dom api instead of wasm<->js<->dom, which is slow

[–] [email protected] 1 points 10 months ago (1 children)

Big if true, do you have a link to follow that development? I've been curious about some languages that compile to JS+WASM but I've been waiting for something like this to finally cut out the middle man and give me an excuse to learn WASM directly.

[–] [email protected] 1 points 10 months ago

its just what i have heard.