Reducing the number of concurrency primitives does not imply reduction in complexity. On the contrary in fact, I've seen the messes created by golang in large production systems. Here's a good article:
https://www.uber.com/blog/data-race-patterns-in-go/