Saturday, July 30, 2011

Google GO – New programming front

Google Go is a new language developed by Google Inc which was first officially announced in November 2009. It’s a Google GO – New programming front compiled, garbage collected concurrent programming language. Language veterans Robert Griesemer, Rob Pike, and Ken Thompson initially started to design Go based on previous work related to the Inferno operating system in September 2007. Go has been deployed to compile on UNIX and Linux platform however as of the launch, Go was not considered to be ready for adoption in production environments.

With ken co creating Go,it has a syntax closer to C except for the type declarations; other syntactical differences are the missing parentheses around for and if expressions. Go has been designed with an aim to have exceptionally fast compilation times, even on modest hardware. Some of the features missing in Go as of now are exception handling, type inheritance, generic programming, assertions, method overloading and pointer arithmetic.

Here is an example of a Hello world program in Go -

package main

import "fmt"

func main()

{

fmt.Printf("Hello, World\n")

}

Go can be compiled using 2 compilers as of now - 6g (and its supporting tools, collectively known as gc) are in C, using yacc/Bison for the parser and Gccgo,a compiler with a C++ front-end with a recursive descent parser coupled to the standard GCC backend.

The industry reaction for Go has been mixed, with some veterans raising its fast compilation and others who criticized lack of features in it. judging by the reaction,one can simply say that Go is just not mature enough to be deployed to industry ready environments and has some rough edges to smooth out.

PS : Like this article ? You can always support me by buying me a coffee or You can always try some of the cool merchandize from PROHACK

No comments:

Post a Comment