Go was created internally at Google starting in 2007, though it wasn't announced until 2009. Google reports using the language in production.
The Go FAQ lists the following as advantages of the programming language:
- It is possible to compile a large Go program in a few seconds on a single computer.
- Go provides a model for software construction that makes dependency analysis easy and avoids much of the overhead of C-style include files and libraries.
- Go's type system has no hierarchy, so no time is spent defining the relationships between types. Also, although Go has static types the language attempts to make types feel lighter weight than in typical OO languages.
- Go is fully garbage-collected and provides fundamental support for concurrent execution and communication.
- By its design, Go proposes an approach for the construction of system software on multicore machines.
Google App Engine was launched with support for Python in 2008 and added Java support in 2009.