News for hackers. Stuff that matters.
Re:Why I Program in Go by pron on Saturday January 05, 2013 @09:36PM (#5015022)
The only reason you hear less "crazy" Go GC stories is because Go has never been tested as much as the JVM under different application requirements. And if high-profile companies have servers that spend 80% of the time in GC -- well, they must have really neglected their code. That's a result of poor software maintenance, and I doubt any language could help them.
Re:Why I Program in Go by enneff on Saturday January 05, 2013 @10:12PM (#5015094)
> The only reason you hear less "crazy" Go GC stories is because Go has never been tested as much as the JVM under different application requirements.

It is definitely true that the JVM had been thoroughly road tested compared to Go, but your conclusion is unsound. Go was designed to specifically avoid this pitfall.

Re:Why I Program in Go by CJefferson on Sunday January 06, 2013 @06:53AM (#5016086)
Really? I remember reading all kinds of problems when trying to run go on 32-bit machines, like: http://news.ycombinator.com/item?id=3805302
Re:Why I Program in Go by enneff on Sunday January 06, 2013 @04:10PM (#5017749)
The 32-bit GC issue is an unfortunate shortcoming of the GC implementation, which will be resolved in Go 1.1 early this year. The issue was merely an artifact of dead simple conservative GC implementation.

OTOH, the memory model of the JVM is intractably linked with its design. Software that runs on the JVM must generate garbage, and so the JVM must include a highly sophisticated GC.

Remember how appallingly bad the JVM was when it was just a few years old? It didn't come close to where we are with Go today. We have only scratched the surface with GC (and other optimizations) for Go.

Re:Why I Program in Go by codygman on Sunday January 06, 2013 @07:10AM (#5016113)
You are correct, but the none of those problems happened on 64 bit machines which I find to be more prevalent these days.
Re:Why I Program in Go by CJefferson on Sunday January 06, 2013 @10:43AM (#5016560)
Still, this story seems much more crazy than any other gc issue I have ever heard of with the jvm.
Re:Why I Program in Go by jlouis on Sunday January 06, 2013 @07:37AM (#5016170)
Sorry, but I am not sure I understand which pitfall you refer to here? Can you elaborate?
Re:Why I Program in Go by martinced on Saturday January 05, 2013 @10:02PM (#5015078)
No... It's because Java totally sucks when objects go from Eden to Survivor and then needs to be GC'ed or from Eden to Survivor to Tenured and then needs to be GC'ed.

That's the very reason why some trading companies who still insist on using Java do use methods where as few objects as possible are ever created and went on to invent things like the LMAX disruptor "pattern" (more like an anti-pattern, where the goal is to be as close to the metal as possible, by allocating gigantic primitive arrays... Quite the contrary of your beloved GC dogma, where you think that creating objects as no impact and that slow GCs are necessarily the programmer's fault).

I realize from your various post that you did really drink the Java cool-aid and that no matter what's going to be said you'll always come touting Java as the best language out there.

I know Java well enough to criticize it.

I also have the impression that Go is used inside Google on some impressive tasks so I wouldn't be to quick to dismiss it.

Re:Why I Program in Go by pron on Saturday January 05, 2013 @10:20PM (#5015115)
I'm not dismissing Go, and I'm not praising Java, and I've even admitted on this very thread that Go is better than Java, so there's really no need in trying to convince me of anything. All I'm saying is that Go isn't good enough -- if I really want fast development and expressivity, there are languages more expressive than Go (more so than Go is to Java), and if I really need top-notch performance, then Java is OK and comes with some absolutely useful advantages that Go doesn't offer. I see excellent use cases for Python, for Ruby, for Clojure, for Java and for C/C++. I just don't see compelling use cases for Go. I'm not dismissing it. It's really nice. I just think it's underwhelming.

And, BTW, if you think Go has some magic GC secrets that will make all (or even some) of the JVM GC problems go away -- I believe you're mistaken.

Re:Why I Program in Go by codygman on Sunday January 06, 2013 @07:12AM (#5016117)
It doesn't have secrets to make them go away, it focuses on helping people create less garbage.
Re:Why I Program in Go by Locke1689 on Saturday January 05, 2013 @10:32PM (#5015149)
I'm not sure what "impressive tasks" you mean, but I don't think that's true. I heard of people using Go, true, but the perf-heavy backends are all in C++.