Google GO


Google has just launched a new language GO. Google say is inspired by some issues Google have with existing languages. on the GO site the reason for creating this new language is given as:

Go was born out of frustration with existing languages and environments for systems programming. Programming had become too difficult and the choice of languages was partly to blame. One had to choose either efficient compilation, efficient execution, or ease of programming; all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java.

Go is described as a lightweight systems programming language with built in support for concurrent processes. The developers claim it has the advantages of languages such as PHP with some of the features of a traditional compiled languages (type safety) such as C.

One of the developers is Ken Thompson one of the fathers of UNIX so the development team have form. It certainly feels like that the developers of GO wanted to get away form the tendency of OO programmers at the drop of a hat to spend hours having obtuse byzantine arguments of the doctrinal elements of Java /C++ rather than you know doing some actual work 🙂

And given Goggles infrastructure of massive amounts of small servers i can see theme using GO to program new services under the hood – they comment theta they haven’t used GO in a live environment yet – but it will be interesting to see what use people make of GO.

Currently GO only runs on Linux and OSX and its unclear if it has a self hosting compiler yet though it seems to use the Gcc route that a lot of languages seem to use on Linux

The GO language home page is here and the launch announcement is here

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s