Using stuff like this, does it make sense to use Rust in a golang-style where instead of async and its function colouring, you spawn coroutines and synchronize over channels?
 replies(2): 
Even folks who write modern go try to avoid overusing channels. It's quite common to see go codebases with few or no channels.
Thats not true. There are stackgul coroutine libraries in Rust too. I believe there's one called "may". They are admittedly not that widely used, but they are available.
Of course it matters what synchronization primitives you choose, for the reasons you gave.