Search, mail, mobile operating systems, advertising and mapping. These are all areas in which Google plays a big part. The company is ever expanding, however, and today they"ve demonstrated that: Google has just introduced an entirely new programming language, taking influences from C++ and Python, called, quite simply, Go.
The language, which has a website here, "combines the development speed of working in a dynamic language like Python with the performance and safety of a compiled language like C or C++," according to the blog post made by Google. To give you a sample of the code, courtesy of TechCrunch, here is a simple "Hello, World!" program.
05 package main
07 import fmt "fmt" // Package implementing formatted I/O.
09 func main() {
10 fmt.Printf("Hello, world; or Καλημέρα κόσμε; or こんにちは 世界n");
11 }
The company listed its reasoning behind this language in the Go FAQ, found on the aforementioned site, which we"ve shown below:
- Computers are enormously quicker but software development is not faster.
- Dependency management is a big part of software development today but the "header files" of languages in the C tradition are antithetical to clean dependency analysis—and fast compilation.
- There is a growing rebellion against cumbersome type systems like those of Java and C++, pushing people towards dynamically typed languages such as Python and javascript.
- Some fundamental concepts such as garbage collection and parallel computation are not well supported by popular systems languages.
- The emergence of multicore computers has generated worry and confusion.