You've gone from "Go channels are broken because they require mutexes to use" to "Go doesn't implement CSP correctly." The former is demonstrably not true and the latter is academic. (Although you did reference a good study on concurrency bugs in Go, but this seems unrelated to either of your claims.)
You aren't doing your argument any favors when you're so hyperbolic. Go channels are manifestly not "broken."
> I suspect that Go trying to solve this would result in a language that looked a lot like Rust with a Garbage Collector.
And yet you honestly can't understand why the designers of Go didn't go down that path? Rust is significantly more complex than Go and much harder to learn.
You aren't doing your argument any favors when you're so hyperbolic. Go channels are manifestly not "broken."
> I suspect that Go trying to solve this would result in a language that looked a lot like Rust with a Garbage Collector.
And yet you honestly can't understand why the designers of Go didn't go down that path? Rust is significantly more complex than Go and much harder to learn.