Os três principais desenvolvedores da Go no Google foram Robert Griesemer, Rob Pike e Ken Thompson. Seu objetivo era criar uma linguagem, baseada na sintaxe da linguagem de programação C, que eliminaria o "lixo estranho" de linguagens como o C ++. Como resultado, o Go evita muitos recursos de outras linguagens modernas, como sobrecarga de métodos e operadores, aritmética de ponteiros e herança de tipos.
Go não é uma linguagem de formato livre: suas convenções especificam muitos detalhes de formatação, incluindo como o recuo e os espaços devem ser usados. A linguagem requer que nenhuma de suas variáveis declaradas ou bibliotecas importadas não sejam usadas, e todas as declarações de retorno são obrigatórias.
Go emprega "inferência de tipos" nas declarações de variáveis: o tipo de variável, em vez de ser uma parte explícita da declaração, é inferido pelo próprio tipo de valor. Por exemplo, onde em C uma variável inteira x pode ser definida para o valor 0 com a instrução.
int x = 0;
Em Go, a declaração equivalente seria:
x: = 0
A variável seria digitada como um inteiro baseado no próprio valor.
Aqui está o clássico "Hello, World!" programa, como escrito em Go:
Importação principal do pacote "fmt" func main () {fmt.Println ("Hello, World")}
Linguagem de programação, termos de programação