Go was conceived in Septemb er 2007 by Rob ert Gries emer, Rob Pike, and Ken Thomps on, all at Google, and was announced in Nov emb er 2009.
The goals of the langu age and its accompanying tools were to be expressive, efficient in both compilation and execution, and effective in writing reliable and robust programs.
Go bears a surface simi lar ity to C and, like C, is a tool for proffessional programmers, achieving maximum effe ct wit h minimum means. But it is much more than an updated version of C.
It borrows and adapts good ideas from many other languages, while avoiding features that have led to complexity and unreliable code. Its facilities for concurrency are new and efficient, and its approach to data abstraction and object-oriented programming is unusually flexible. It has automatic memory management or garbage collection.