In computer science, communicating sequential processes (CSP) is a formal language for describing patterns of interaction in concurrent systems. It is a member of the family of mathematical theories of concurrency known as process algebras, or process calculi, based on message passing via channels.
GO Routines: related to the coroutine concept.
JavaScript and Python have also similar facilities and packages. Briefly, this a vast, interesting, and actual topic, very useful to learn.