Have you programmed in Google's GO programming language by Google today?
Their Hello World is weeaboo!! It must be good!
Name:
Anonymous2009-11-10 22:21
No, because it's retarded. It calls itself a systems language, but has garbage collection. The whole point of a systems languages(like C) is to have complete control over everything. If the compiler or runtime is managing memory, then it's not a systems language, it's bullshit. Programmers these days are such pussies.
Name:
Anonymous2009-11-10 22:26
>>2 Cringe. Another poor imitation of C that I will never ever use. Why do people keep churning out shit like this? Who thought that Systems language + garbage collection == GOOD IDEA? I would like to kick them in the groin.
What is the origin of the name?
“Ogle” would be a good name for a Go debugger.
I don't get it.
Go has fast builds, clean syntax, garbage collection, methods for any type, and run-time reflection
Sure doesn't seem like a systems language to me - honestly, it seems like a replacement to the shit-show that is Java. It couldn't have gotten here soon enough. Not sure why they're calling it a systems language actually.
Some of it seems extremely attractive, in particular slices; that looks like a truly great language feature. Built-in concurrency looks really good; no other language has done this properly, and most new ones don't even try (I'm looking at you, Python). Another thing that in my opinion is good:
Go does not support function overloading and does not support user defined operators.
It's like D done right. It's like managed C with built in GC/threading libs and all the old legacy and error prone shit cleaned out (built-in arrays, no header files, no automatic type conversions, case labels don't fall through automatically, etc).
Some really nice improvements over C++; for instance C-style method declarations only (no duplicate syntax), open classes!!!, new() is a function, automatic interfaces (static duck typing! roxors!).
Here's one thing that doesn't look good:
When a package defines an object (type, constant, variable, function) with a name starting with an upper case letter, that object is visible to any other file which imports that package.
Having the language interpret naming conventions for things is a bad idea. It was a shitty idea in Python and it's still a shitty idea.
Name:
Anonymous2009-11-11 1:22
Go promotes writing systems and servers as sets of lightweight communicating processes, called goroutines, with strong support from the language. Run thousands of goroutines if you want—and say good-bye to stack overflows.
I'd just like to point out that these should have been called broroutines.
I find it mildly interesting that they did not use LLVM because they felt it was too slow, as one of the reasons people are excited about LLVM is because it's much faster than GCC.
Name:
Anonymous2009-11-11 10:58
>>17 because it's might one day be a little faster than GCC until GCC gets a patch the next day.
Name:
Anonymous2009-11-11 11:22
At first glance I like the look of it.
I'm a bit scared of GC and lack of pointer arithmetic, but coroutines and closures are sexy. Still, Java's GC left a bad taste in my mouth and I'm scared.
It's like everything I want in a non-C language: most of C, lightweight threads and stops short of being Perl.
Nastiest fugly syntax I've seen in a language, and that includes Erlang.
Here's hoping it dies a quiet death.
Name:
Anonymous2009-11-11 11:36
For what reason exactly do people dislike the concept of a garbage collector? is the dependency on pointers that strong?
Go language looks interesting. I'm rather uncomfortable with its weak enforcement of a standard statement termination (sometimes ';', sometimes not) but that's nitpicking. If I had the free time I'd take to learning its grammar.
Name:
Anonymous2009-11-11 11:37
>>20
Erlang isn't bad. I've liked languages with worse syntax. And at least it's not whitespace dependent.
Name:
Anonymous2009-11-11 11:42
>>21
I've been burned by bad GC on a few occasions. The GC here is probably alright though.
In Go, ; is not a terminator, it's a separator. It behaves a lot like Perl's treatment of commas (a tail comma is accepted.) Think of it as a means of appending a statement to the current line or group.
Name:
Anonymous2009-11-11 11:43
Issue 9: I have been working on a programming language, also called Go, for the last 10 years. There have
been papers published on this and I have a book.
I would appreciate it if google changed the name of this language; as I do not want to have to
change my language!
>>26
LLVM's problem scope is elaborate. Therefore, it shouldn't be surprising that LLVM is still incomplete and immature.
Name:
Anonymous2009-11-11 11:50
>>23 In Go, ; is not a terminator, it's a separator. It behaves a lot like Perl's treatment of commas (a tail comma is accepted.) Think of it as a means of appending a statement to the current line or group.
What is it in terms of C's comma operator?
but a) it's a semicolon and goes in semicolon places, and b) while it must come between grouped statements, it can be peppered throughout code willy-nilly:
fmt.Printf("Sup guys?\n");;;;
compiles with no complaints (just checked), even though none are needed there.
and c) caveats galore, strained analogy, etc.
Name:
Anonymous2009-11-11 12:01
Google will just tell francis mccabe to go suck some gay elephant cocks then they will go back to doing no evil as usual.