On Wednesday, 13 November 2013 at 09:12:40 UTC, Jonathan M Davis
wrote:
Personally, I have no interest in it and think that its
designers made some
very poor choices, but that doesn't mean that we should be
making fun of it or
make fun of Google for being the place where the engineers who
created it
work. The fact that Google let its engineers spend company time
on creating a
new programming langueg says very good things about Google,
even if the
language itself ultimately isn't what we'd like.
- Jonathan M Davis
For the record, I wasn't making fun of Go when I spoke of its
readability being a particular virtue. If I was managing a large
project with programmers of divergent ability then I might well
pick it for that reason alone. The design choices might seem poor
from the perspective of someone looking for a language that gives
them lots of power, but if you look at it from the perspective of
a language designed to minimise the power of co-workers (and
anybody else) to write difficult-to-understand code, it's
designed magnificently.
An example of this is how, in order to avoid ambiguity, both
automatic dereferencing and the -> operator from C were omitted
from the language. This means that if pt is a pointer to a
struct, then I have to write (*pt).X to access field X of that
struct, as opposed to pt.X in D or pt->X in C, making it
completely clear to anybody glancing at the code that pt is a
pointer.