Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Um, nope? What exactly is google-specific about it? Nothing from what I can tell. It's as general-purpose as C or Python or JS etc etc. In fact, it's basically C, slightly redesigned from scatch for this decade rather than the one 30 years ago...


It's not dictated by Google management, but it's definitely directed by Pike et al to address the concerns of companies developing software at Google's massive scale.

As an example, C++ and Java programs at Google were taking more than half an hour to compile. This is why Go's semantics were chosen with speed-of-compilation in mind:

* Strictly acyclic module hierarchies (greatly simplifies compile-time name resolution)

* No generics (specialization has a compile-time cost)

* Unused imports are a fatal compilation error (to avoid having to parse unnecessary files)

All three of these decisions are somewhat contentious; Pike admits as much in many of his talks. But they were chosen because of the challenges of writing software at Google's scale. It is in this roundabout way that Go "belongs" to Google, in the sense that it addresses problems that Google has and prioritizes the best solutions to those problems, whether or not those solutions are at odds with the needs of non-Google users.


I see Go basically as Google's kind (duck typing, garbage collection, faster, no Global Interpreter Lock) migration offer to their Python Coders to get rid of hampered (for Google scale) Python, some kind of Python++. If some C++ coders want to migrate also (shorter compile times, better dependency management (no messy include files)), they are welcome.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: