Contact [email protected] Explainer https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md
Specification https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md Summary Stack Switching denotes a technology that allows programs to suspend and resume computation. This is an active area that is part of the WebAssembly standards track. See https://github.com/WebAssembly/stack-switching and https://github.com/WebAssembly/meetings/tree/main/stack. This particular feature refers to the integration between JavaScript Promises and stack switching. This is described in more detail in https://docs.google.com/document/d/16Us-pyte2-9DECJDfGm5tnUpfngJJOc8jbj54HMqE9Y/edit# <https://docs.google.com/document/d/16Us-pyte2-9DECJDfGm5tnUpfngJJOc8jbj54HMqE9Y/edit> Blink componentBlink>JavaScript>WebAssembly <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EJavaScript%3EWebAssembly> Motivation In order to support responsive applications written using WebAssembly it is necessary to provide functionality that allows WebAssembly programs to be suspended and resumed. The primary initial use case is to allow WebAssembly programs whose source relies on synchronous APIs to use asynchronous APIs that are increasingly common on the Web platform. The Promise integration proposal allows this to be done without changing the WebAssembly specification itself and without allowing JavaScript programs to be suspended (other than via existing async mechanisms). Initial public proposal https://github.com/WebAssembly/js-promise-integration/blob/main/proposals/js-promise-integration/Overview.md Search tagsstack switching <https://chromestatus.com/features#tags:stack%20switching>, Promise <https://chromestatus.com/features#tags:Promise> TAG review TAG review statusPending Risks Interoperability and Compatibility *Gecko*: No signal *WebKit*: No signal *Web developers*: No signals *Other signals*: WebView application risks There is a potential that JavaScript applications could attempt to use this API to introduce behaviors not governed by the ecmascript standard. However, the API is designed to mitigate this risk by causing such JavaScript programs to fail to execute (i.e., throw exceptions in such a way as to prevent their use of the API). There does not appear to be any specific existing API that would be impacted by this proposal. Debuggability Is this feature fully tested by web-platform-tests <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> ?No Flag name enable-experimental-webassembly-stack-switching Requires code in //chrome?False Tracking bug https://bugs.chromium.org/p/v8/issues/detail?id=12191&q=owner%3Ame&can=2 Estimated milestones No milestones specified Link to entry on the Chrome Platform Status https://chromestatus.com/feature/5674874568704000 This intent message was generated by Chrome Platform Status <https://chromestatus.com/>. -- Francis McCabe SWE -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAAdKk6BGFseZ6pBO2qEW_xeovVw1_guVq26rcNM1nWY442Y5Ng%40mail.gmail.com.
