stack-switching
stack-switching copied to clipboard
A repository for the stack switching proposal.
I've been reading the new [Bag of Stacks](https://github.com/WebAssembly/stack-switching/blob/main/proposals/bag-o-stacks/Explainer.md) explainer. Is it intended that intermediate JavaScript frames will also be captured by a suspended coroutine? For example if I execute `switch.call`...
With GC now at phase 4, soon we will want to rebase work here on top of it. Wasm GC introduces declared subtyping for functions, structs, and arrays. Does it...
Hello, As we're now looking into implementing this proposal in Wizard, we noticed that the `barrier` instruction introduces a scope for instructions where suspends are dynamically disallowed. This has lexical...
In the course of developing the GC extension for Wasm, we eventually settled on having two type immediates for casting instructions. As I recall, the rationale was partly motivated by...
I have an example `Promise` implementation in AssemblyScript that can be compiled to either JavaScript (with TypeScript compiler), or to WebAssembly (with AssemblyScript compiler), here: https://github.com/aspkg/ecmassembly In particular, here's a...
Does this approach avoid function coloring? That is: do legacy calls of functions containing yield instructions just treat these as nop?
A given computation may undergo multiple suspensions/resumptions in its lifetime. For example, in the case of use async/await to access I/O, a given computation is likely to be suspended and...
When a computation suspends, the code that responds to that suspension denotes the response computation. In some situations, it is legitimate that the response code is textually associated with the...
Being able to specify exactly which prompt bracket a particular suspension refers to is important for safety. This will help to prevent so-called accidental capture of a suspended computation by...