Content deleted Content added
Updated link for Java proposal and references. |
m v2.04b - Bot T20 CW#61 - Fix errors for CW project (Reference before punctuation) |
||
Line 11:
The concept was formulated in 2016 by Martin Sústrik (creator of [[ZeroMQ]]) with his C library libdill, with [[Go_(programming_language)#Concurrency:_goroutines_and_channels|goroutines]] as a starting point.<ref>{{cite web |last1=Sústrik |first1=Martin |title=Structured Concurrency |url=http://250bpm.com/blog:71 |date=7 February 2016 |access-date=1 August 2019}}</ref> It was further refined in 2018 by Nathaniel J. Smith, who introduced a "nursery pattern" in his [[Python (programming language)|Python]] implementation called Trio.<ref name=smith>{{cite web |last1=Smith |first1=Nathaniel J. |title=Notes on structured concurrency, or: Go statement considered harmful |url=https://vorpus.org/blog/notes-on-structured-concurrency-or-go-statement-considered-harmful/ |date=25 April 2018 |access-date=1 August 2019}}</ref> Meanwhile, Roman Elizarov independently came upon the same ideas while developing an experimental [[coroutine]] library for the [[Kotlin (programming language)|Kotlin language]],<ref>{{cite web |last1=Elizarov |first1=Roman |title=Structured concurrency |url=https://medium.com/@elizarov/structured-concurrency-722d765aa952 |date=12 September 2018 |access-date=21 September 2019}}</ref><ref>{{cite AV media |people=Elizarov, Roman |date=11 July 2019 |title=Structured concurrency |medium=Video |language=en |url=https://youtube.com/watch?v=Mj5P47F6nJg&t=2538 |access-date=21 September 2019 |publisher=Hydra Distributed computing conference |minutes=42 |quote="We needed a name and we needed to finalize this whole concept [...] and we stumble onto this blog post [...] by Nathaniel J. Smith."}}</ref> which later became a standard library.<ref>{{cite web | url=https://kotlinlang.org/docs/coroutines-basics.html#structured-concurrency | title=Coroutines basics: Structured concurrency | website=Kotlin | publisher=JetBrains | access-date=3 March 2022}}</ref>
In 2021, [[Swift (programming language)|Swift]] adopted structured concurrency.<ref>{{cite web |first1=John |last1=McCall |first2=Joe |last2=Groff |first3=Doug |last3=Gregor |first4=Konrad |last4=Malawski |access-date=3 March 2022 |title=Swift Structured Concurrency Proposal |website=Apple's Swift Evolution repo |publisher=GitHub |url=https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md}}</ref>
== Variations ==
|