In various places in web ui frameworks, especially “transitions” (in the React Suspense sense), it is useful to build up a batch of signal writes and commit them later, even when the formation of this batch spans async operations, and the previous graph remains interactive. @shaylew has called this concept “transactions”, and has been researching semantics and strategies for them, and @trueadm has been experimenting with this concept in Svelte 5.
Many frameworks (eg Solid) support a simpler model of transitions/transactions, with a maximum of two parallel worlds (current and post-transition), but the ideal would be to support multiple parallel transactions within the same suspense boundary that could be committed at different times. According to @acdlite, this generality would be needed to model React’s state as signals, and its implementation would need to be quite efficient to be competitive.
It is unclear whether transactions can be implemented correctly and efficiently on top of other Signal primitives or if they would need built-in support of some kind. Let’s use this issue to track research in this area.
styfle, unadlib, mutech, ZeekoZhu, yw662 and 6 moremutech and lin72hbas080 and aigan
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4