4 ms·
> GC, easy strings, maps, easier first-class function syntax, code formatting, modern standard library, easy concurrency, etc. So what part of C is not in the
by firethief 7y ago
> GC, easy strings, maps, easier first-class function syntax, code formatting, modern standard library, easy concurrency, etc.
So what part of C is not in the list of warts averted in Go?
- jlokier 7y ago> So what part of C is not in the list of warts averted in Go? A simple language with only a few things to learn. Everything built up from those few things.
- firethief 7y agoHuh. "A simple X" is a wily phrase, because everything is exceedingly "simple" in the aspect its designer had in mind[1], but complex from other perspectives. C may be simple in terms of how you would describe it building on the interface provided by a typical CPU, but to someone who only knows Scheme or Haskell learning the machine model is no small task--I don't think the 683-page length of the C11 specification can be attributed to its authors being long-winded. I don't really see Go as having inherited C's simplicity-in-terms-of-differences-from-a-machine-model. If they were optimizing for the same kind of "simplicity" that C has, they'd have to be out of their minds to add garbage collection, strings, maps, lambdas, and goroutines. Go, like Scheme, Haskell, and python, is a different "simple" from C. 1: unless designed by a committee with no such single-minded aim