←back to thread

320 points willm | 2 comments | | HN request time: 0.421s | source
Show context
svieira ◴[] No.45106733[source]
I used to keep plugging Unyielding [1] vs. What Color Is Your Function [2] as the right matrix to view these issues within. But then Notes on structured concurrency [3] was written and I just point to that these days.

But, to sum it all up for those who want to talk here, there are several ways to look at concurrency but only one that matters. Is my program correct? How long will it take to make my program correct? Structured concurrency makes that clear(er) in the syntax of the language. Unstructured concurrency requires that you hold all the code in your head.

[1]: https://glyph.twistedmatrix.com/2014/02/unyielding.html

[2]: https://journal.stuffwithstuff.com/2015/02/01/what-color-is-...

[3]: https://vorpus.org/blog/notes-on-structured-concurrency-or-g...

replies(3): >>45109891 #>>45112550 #>>45113108 #
1. heisenzombie ◴[] No.45109891[source]
I'll second the plug for structured concurrency (and specifically the Trio [1] library that the author wrote.

[1] https://github.com/python-trio/trio

replies(1): >>45111067 #
2. vpribish ◴[] No.45111067[source]
If I ever want to use async in python again i'm going with Trio.