logoalt Hacker News

faldor20today at 8:18 AM2 repliesview on HN

It seems like a bit of a shame that wasm got support for exceptions but doesn't support effects which are a generalisation of the same concept. https://wasmfx.dev/

I'm guessing this may be because exceptions exclusively require stack unwinding where as effects require full stack switching.

Seems like there is still progress on that though which gives hope https://github.com/WebAssembly/stack-switching/blob/main/pro...


Replies

boomskatstoday at 11:19 AM

Thanks for that link! There goes my Saturday morning.

After a bunch of middle clicking I landed here [0]. So if I understand correctly, the current stack switching proposal depended on exception handling to be implemented first for resume.throw, so that bit was blocked until now.

But it's also further along than you might assume [1], i.e. you can already invoke Wasmtime with `-W stack-switching` and hit the boundaries where the experimental implementation breaks.

Sadly though, like many ambitious Wasm things that don't have revenue directly attached to them, it now seems partly a case of finding someone willing to sponsor or finish the remaining work [2].

I also found the list of open stack-switching issues[3] useful.

(also, minor nit - Wasm != Wasmtime)

[0]: https://github.com/bytecodealliance/wasmtime/issues/10248

[1]: https://github.com/bytecodealliance/wasmtime/issues/12941

[2]: https://github.com/bytecodealliance/wasmtime/issues/12941#is...

[3]: https://github.com/bytecodealliance/wasmtime/issues?q=state%...

shevy-javatoday at 10:25 AM

> Seems like there is still progress

Oh I already know that about WASM now. All is in progress ... perpetual progress.

I'll look again in the next decade.

show 1 reply