LWN.net Logo

GCC 4.6.0 released

GCC 4.6.0 released

Posted Mar 29, 2011 6:08 UTC (Tue) by jensend (guest, #1385)
In reply to: GCC 4.6.0 released by HelloWorld
Parent article: GCC 4.6.0 released

I fail to see how golang is interesting. I imagine you've seen the Go vs Brand X comparison?

The thing that hath been, it is that which shall be; and that which is done is that which shall be done: and there is no new thing under the sun. - Kohelet.


(Log in to post comments)

GCC 4.6.0 released

Posted Mar 29, 2011 13:41 UTC (Tue) by HelloWorld (guest, #56129) [Link]

I hadn't. Thank you for the link, it's rather enlightening.

GCC 4.6.0 released

Posted Mar 29, 2011 21:26 UTC (Tue) by cmccabe (guest, #60281) [Link]

I take issue with that article. Despite spending so much time on things like syntax, he doesn't write code in the Golang style, which is 4-character indentation and cuddled braces. This is more than a minor issue, because whitespace is significant in Go. For example, this won't compile:

if (foo)
{
}
else
{
}

It has to be written this way:
if (foo) {
} else {
}

Yet his examples are all written out with the former style of braces, and Ruby-style 2-space tabs. So it's clear that he's hardly used Go at all.

After spending all this time obsessing over syntax, he glosses over the major new things in Go with this breezy paragraph:

> Go has more in the way of actual features --- interfaces, channels, maps,
> defer , fallthough , proper closures --- but Brand X is more consistent
> with its features

Yeah. Who needs good support for concurrency, proper error handling, closures, and a radical new type system. Algol-68 has "while" loops, and that's *important*. It also has the "pleasing symmetry" of having an explicit keyword to put things on the stack, much like C's useless auto keyword. Oh yeah, and there's "nothing new" in Go, except for that stuff that I just ignored.

Meanwhile, Algol-68 "also has threading, but the mechanism is unspecified."

Accusing Golang of not being "consistent in its features" is a bizarre conclusion. If you've used any langauge from the past 20 years-- C++, Java, Perl, PHP, or Javascript-- you will find Golang much more consistent than any of those. (I don't know Algol-68 well enough to make this kind of esthetic judgement, though.)

In summary, he obsesses over Go's syntax, gets even that wrong, and completely ignores the major challenges facing modern programmers: i.e. effectively dealing with parallelism and building large-scale object oriented systems.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds