On Thu, Aug 1, 2019 at 8:55 PM Arthur A. Gleckler <xxxxxx@speechcode.com> wrote:

They're similar, but Go channels are
unbuffered,

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.

(I hold similar views about eq? and eqv?:  eq? is a special-purpose speed hack, eqv? is Scheme's identity predicate.)


John Cowan          http://vrici.lojban.org/~cowan        xxxxxx@ccil.org
Kill Gorgun!  Kill orc-folk!  No other words please Wild Men.  Drive away
bad air and darkness with bright iron!   --Ghan-buri-Ghan