this post was submitted on 27 Dec 2023
706 points (98.8% liked)

Programmer Humor

19817 readers
28 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 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Bye 5 points 1 year ago (23 children)

I don’t work with web stuff, why is js so weird? Can you write a website in other languages, like c# or python?

[–] [email protected] 21 points 1 year ago (13 children)

Can you write a website in other languages, like c# or python?

sure, as long as it compiles to javascript

[–] Bye 6 points 1 year ago (11 children)

But the browser can’t handle other languages? That seems a bit silly

[–] pankkake 16 points 1 year ago (1 children)

There's a push towards WebAssembly. Officially it's not supported yet, but most browsers can handle it. I don't know how mature the project is though.

But yeah, essentially everything on the web is JS.

[–] Static_Rocket 15 points 1 year 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 1 year 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.

[–] Static_Rocket 5 points 1 year 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 1 year 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 1 year 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

[–] Static_Rocket 1 points 1 year 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 1 year ago

its just what i have heard.

load more comments (9 replies)
load more comments (10 replies)
load more comments (19 replies)