this post was submitted on 18 Sep 2025
60 points (100.0% liked)

Programming

22734 readers
62 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
top 6 comments
sorted by: hot top controversial new old
[–] JakenVeina@midwest.social 24 points 2 days ago* (last edited 2 days ago) (3 children)

These all sound like good improvements to WASM as a binary target, but... how do we STILL not have access to any kind of I/O? How is that not the #1 priority? No access to the DOM, no access to local storage, no access to networking... WASM will continue to be borderline useless until it can actually do the things an application needs to do, without having to implement some hackjob JS interop layer.

[–] Solemarc@lemmy.world 16 points 2 days ago

I/O and stuff like that is being done in the WASI proposals not in WASM proper. I believe most of this stuff is waiting for initial implementations at this point and then it becomes a proper standard.

[–] Ephera@lemmy.ml 4 points 1 day ago

As the other comment said, outside the browser WASI is what does IO. As for DOM access in the browser, I doubt they want to reimplement the DOM API, because:

  • It's insanely complex. This wouldn't be done within one release, but rather take years to add a substantial amount of APIs.
  • No one wants to have to maintain two versions of the DOM API documentation. You'd need to basically translate the entirety of MDN to some WASM API description. And in the end, hardly anyone would read it either way, because they're likely using some wrapper library to interact with the API.
  • If you're using such a wrapper library anyways, it hardly matters to most people, whether this library generates JS API calls or some WASM API calls.

I try to stay as far away from JS as possible, and I do not think it's worth developing a WASM DOM API. With a competent framework, you can develop complex web-UIs without ever touching JavaScript, which is good enough for me.

[–] MrScottyTay@sh.itjust.works 12 points 2 days ago

I hate having to use js interop for simple stuff like manipulating the history stack or even just saving to the clipboard

[–] meaansel@lemmy.world 1 points 1 day ago (1 children)

On GC With no virtual memory, memory fragmentation is a possibility on wasm targets It's funny that for memory management you either have to deal with fragmentation like it's a microcontroller (or 90s) or a fully blown garbage collection.

I mean, don't get me wrong, having GC is perfectly reasonable. Every other language was gonna (and currently does) implement it anyway - so might as well lower it into native code.

[–] meaansel@lemmy.world 1 points 1 day ago* (last edited 1 day ago)

...But i fell like a case for memory management usually provided by system and cpu for low-level languages is just as strong (couldn't edit comment above for some reason)