Unbuffered channels work if you are using them to synchronize; but if you want to communicate, buffered channels make more sense.  Chicken's gochan egg supports only buffered channels.

On Thu, Aug 1, 2019 at 9:28 PM Arthur A. Gleckler <xxxxxx@speechcode.com> wrote:
On Thu, Aug 1, 2019, 3:17 PM John Cowan <xxxxxx@ccil.org> wrote:

They can be either buffered or unbuffered, and some designs will deadlock with unbuffered channels but not with channels of even size 1.  Pipes are of course buffered; I think that unbuffered channels are actually the special case, even though for whatever reasons Go tutorials always talk about unbuffered channels first.

Yes, you're right. I forgot about the buffered channels.  As I recall, Pike emphasizes the use of unbuffered channels for correctness in his talks.