Yeah, I read that like everyone else. I understand what a generational collector is. The problem with your argument, I think, is that there are much more popular languages with similarly dumb GCs that Go outperforms.
-
-
You want to be arguing that Go’s GC is SUBOPTIMAL. But instead, you’re arguing that it’s INAPPROPRIATE. You’re going to lose that argument.
1 reply 0 retweets 2 likes -
Replying to @tqbf @KirinDave
But I’m only arguing that the Go GC design is suboptimal. I’m not trying to argue that it doesn’t work at all. My problem is that people don’t realize that it’s suboptimal. We’re forgetting all the lessons we learned in the ‘90s, which is tragic.
2 replies 0 retweets 6 likes -
Replying to @pcwalton @KirinDave
There are a lot of good ideas in CS that turn out not to have a whole lot of practical benefit for huge ranges of real-world problems. Look at the instruction set we all code to now! TRAGIC.
2 replies 0 retweets 1 like -
Replying to @tqbf @KirinDave
Are you trying to argue that generational GC does not have a practical benefit for most programs? Because that would be very hard to successfully argue!
1 reply 0 retweets 0 likes -
Replying to @pcwalton @KirinDave
Yes, I am arguing that there are huge numbers of important commercial programming problems that don’t care whether their GC is generational or — scarier still! — care much more about latency than throughput.
3 replies 0 retweets 1 like -
(I am _not_ arguing that there aren’t Java apps that need to be Java apps because the Java GC suits their workloads).
1 reply 0 retweets 0 likes -
You also know you’re oversimplifying the memory lifecycle story in Golang by fixating on the GC collector design. You should acknowledge that directly.
1 reply 0 retweets 0 likes -
Replying to @tqbf @KirinDave
Are you referring to the escape analysis and embedding structs within other structs? Because I think Go developers make those out to be way more consequential than they are.
1 reply 0 retweets 0 likes -
Escape analysis (a) is something other languages do and (b) only matters so much in Go because the GC is not generational, making allocation really slow (10x-100x), therefore making it more important to rely on escape analysis.
-
-
Replying to @pcwalton @KirinDave
The argument is NOT that Go is better than other languages because it “does escape analysis”; it’s that stack-allocated objects consume a big chunk of the short-lifetime allocations.
2 replies 0 retweets 0 likes -
You didn’t argue that Go’s GC was worse than other GCs and I’m saying it’s better. You argued that it was a TRAGEDY that is inappropriate for real applications. Now you’re — respectfully — backpedaling.
1 reply 0 retweets 0 likes - 4 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.