On Fri, 29 Sep 2017, Anselm Garbe <garb...@gmail.com> wrote: > Not sure who came up with that conclusion. Granted, you can solve many > problems surprinsingly well with plain C. But I consider Go as a > suckless option because of: > > - The only OO-way almost done right > - CSP > - statically linked binaries > > The GC in Go is a consequence of its concurrency approach -- when you > solve problems with a high degree of concurrency, maintaining memory > properly can become a hard task. And Go adopted CSP quite seriously in > contrast to regular imperative languages that don't even provide > language constructs that come close.
THANK YOU Anselm. > - statically linked binaries This, plus the ease of building and cross-compiling. I want to write software that other people find easy to try. Most suckless tools are "git clone; make"; most go programs are "git clone; go build" (or just "go get"). If you trust my builds, "curl" or "wget" are enough. High barrier to entry sucks. > - CSP TBH I can't imagine doing Judo in a language without first-class concurrency support - the problem is obnoxiously parallelisable. The alternatives are: clunky subprocess juggling, bolt-on libraries (often complex and/or half-baked), or serial execution. > - The only OO-way almost done right I have pluggable transports in the works. I found refactoring Go code more pleasant than any other language. They DID get it right. Go has its shortcomings, but - let's be honest - as far as modern languages go, I don't think you can do much better. <3,K.