Live data from Hacker News

Google Go: Good For What?

lessonsoffailure.com

21–30 of 40 posts

Re: Google Go: Good For What?

#21
post #6

Earlier quoted context omitted.

I haven't written any Go, but the FAQ ( http://golang.org/doc/go_faq.html#principles ) says: "There are no forward declarations and no header files; everything is declared exactly once." Is the author just wrong, or has the language changed since the FAQ was last updated?

He confuses forward declarations with "declaring the type before the variable name".

I think you mean "declaring the variable name before the type".

So C is "int x" where Go is "x int". BASIC is typically more like "DIM x AS INTEGER".

Re: Google Go: Good For What?

#22
"I’d say there are plenty of non-starters to keep Go out of the application programming space."

God, I've got tired of all desktop applications written in python, they're soo slow. I hope Go gets used both in the application space and system space, so not just our systems are fast, the applications too.

Re: Google Go: Good For What?

#23

I'm genuinely curious - Scala is faster and better performant, what is there in GO that there isn't in Scala? I mean, if you were to build a highly scalable web app, why would you choose one over the other? Any thoughts??

Go does not require a JVM.

Re: Google Go: Good For What?

#25

I'm genuinely curious - Scala is faster and better performant, what is there in GO that there isn't in Scala? I mean, if you were to build a highly scalable web app, why would you choose one over the other? Any thoughts??

Ask what isn't in Go that is in Scala. The Go authors deliberately left out certain features to focus on what they call "clarity of design". I don't see them ever adding XML literals for instance!

Re: Google Go: Good For What?

#26

I'm genuinely curious - Scala is faster and better performant, what is there in GO that there isn't in Scala? I mean, if you were to build a highly scalable web app, why would you choose one over the other? Any thoughts??

What isn't in Scala? It seems to include everything but the kitchen sink. I would prefer to read/debug Go code over Scala and that makes all the difference to me. Go is a simpler language. It seems you need a PhD to fully appreciate Scala.

Re: Google Go: Good For What?

#27
post #25

I'm genuinely curious - Scala is faster and better performant, what is there in GO that there isn't in Scala? I mean, if you were to build a highly scalable web app, why would you choose one over the other? Any thoughts??

Ask what isn't in Go that is in Scala. The Go authors deliberately left out certain features to focus on what they call "clarity of design". I don't see them ever adding XML literals for instance!

It's worth reading http://commandcenter.blogspot.com/2012/06/less-is-exponentia... to get some idea of the motivation behind including less.

If you believe that our software systems are increasingly complex and that some aspect of the problems we're solving are essentially complex, then the strongest path towards simplicity lies in minimizing complexity incidental to the problems we're solving. One facet of programming which routinely introduces complexity is our tools, particularly our programming languages.

I believe both Rob Pike (and the Go authors) and Rich Hickey are both motivated in part by this impulse or a variation on it. They chose very different ways of addressing the problem, but Clojure and Go are a lot more similar than you'd think.

Re: Google Go: Good For What?

#28

Earlier quoted context omitted.

They don't produce great code because they are optimized for compilation speed. IIRC, the plan is to have your quick to compile compiler and your fast execution time compiler..

It's not the plan; they already exist: gc is the default, fast suite of compilers; gccgo is a Go front-end for GCC.

I should have been clear: it is the plan to maintain this dichotomy

Re: Google Go: Good For What?

#29
post #25

Earlier quoted context omitted.

Ask what isn't in Go that is in Scala. The Go authors deliberately left out certain features to focus on what they call "clarity of design". I don't see them ever adding XML literals for instance!

It's worth reading http://commandcenter.blogspot.com/2012/06/less-is-exponentia... to get some idea of the motivation behind including less. If you believe that our software systems are increasingly complex and that some aspect of the problems we're solving are essentially complex, then the strongest path towards simplicity lies in minimizing complexity incidental to the problems we're solving. One facet of programmi…

> If you believe that our software systems are increasingly complex and that some aspect of the problems we're solving are essentially complex, then the strongest path towards simplicity lies in minimizing complexity incidental to the problems we're solving. One facet of programming which routinely introduces complexity is our tools, particularly our programming languages.

That is true, but I'm not sure the correlation you seem to be suggesting here — that complex tools breed complex programs — is realistic.

A lot of the time, complexity can either live in your tools or in your program. For example, garbage collection requires a more complicated toolset than manual memory management, but in return it removes the complexity of memory management from your code. Similarly, ASM is simpler than C, and Whitespace is simpler than Python, but most people will agree that a program written in the latter tends to be simpler than the same program written in the former.

Re: Google Go: Good For What?

#30

Earlier quoted context omitted.

He confuses forward declarations with "declaring the type before the variable name".

I think you mean "declaring the variable name before the type ". So C is "int x" where Go is "x int". BASIC is typically more like "DIM x AS INTEGER".

For the record: as someone who started in the early '90s in C, I hate hate hate the Go declaration syntax. But the designers make a very compelling case for why it's the right syntax: C function pointers are needlessly convoluted.
Post reply on HN