Just a few comments to add to Irit's response. On Sat, Mar 27, 2021 at 11:03 AM Paul Sokolovsky <pmiscml@gmail.com> wrote: [..]
Bottom line: this seems like a Trio's special-purpose feature, with good wishes of becoming the de facto standard.
The bottom line is that Trio nurseries were proven to be a very useful and intuitive primitive. But the error handling API around them is unintuitive and hard to use. Now that we want to add an equivalent of nurseries to asyncio (we'll likely call them Task Groups) we need to sort out the error handling mechanism, finally.
From my PoV, a solution which doesn't add particular complex behavior into the language core, but allows to plug it in, and keep whole thing more explicit, is something that "works better".
I understand your PoV, but there's a point where building explicit complex APIs becomes so detrimental to the overall usability that there's a warrant for solving the problem in syntax and with builtin types. Yury