Loading AI tools
linguaggio di programmazione Da Wikipedia, l'enciclopedia libera
Go è un linguaggio di programmazione ad alto livello compilato e tipizzato staticamente, progettato da Robert Griesemer, Rob Pike e Ken Thompson presso Google. È sintatticamente simile al C, ma dispone anche della memory safety, garbage collection, tipizzazione strutturale e concurrency in stile CSP. Spesso ci si riferisce a lui come a Golang a causa del suo precedente nome di dominio, golang.org
, ma il suo nome corretto è Go.
Go linguaggio di programmazione | |
---|---|
![]() | |
Autore | Google (azienda) |
Data di origine | 10 Novembre 2009 |
Ultima versione | 1.22.4 / 4 Giugno 2024 |
Utilizzo | Generico |
Paradigmi | Multi paradigma: programmazione concorrente, programmazione strutturata, programmazione imperativa. |
Tipizzazione | Statica, Fortemente Tipizzata |
Estensioni comuni | .go |
Influenzato da | C, Limbo, Modula, Newsqueak, Oberon, Pascal, Python |
Ha influenzato | Crystal, Zig |
Implementazione di riferimento | |
Licenza | licenza BSD |
Sito web | go.dev |
Esistono due implementazioni principali:
La toolchain del compilatore "gc" di Google, self-hosting, destinata a più sistemi operativi e WebAssembly.
gofrontend, un frontend per altri compilatori, con la libreria libgo. Con GCC la combinazione è gccgo; con LLVM la combinazione è gollvm.
Un compilatore source-to-source di terze parti, GopherJS, compila Go in JavaScript per lo sviluppo web front-end.
Go è stato progettato da Google nel 2007 per migliorare la produttività nella programmazione in un'era di macchine multicore, connesse in rete e con ampie basi di codice. I progettisti volevano affrontare le critiche rivolte ad altri linguaggi in uso a Google, mantenendo però le loro caratteristiche utili:
I progettisti erano principalmente motivati dalla loro comune avversione per il C++.
Go è stato annunciato pubblicamente nel novembre 2009 e la versione 1.0 è stata rilasciata nel marzo 2012. Go è ampiamente utilizzato in produzione presso Google e in molte altre organizzazioni e progetti open-source.
La mascotte Gopher è stata introdotta nel 2009 per il lancio open-source del linguaggio. Il design, realizzato da Renée French, è stato ispirato da una promozione del WFMU risalente al 2000.
Nel novembre 2016, i caratteri tipografici Go e Go Mono sono stati rilasciati dai designer Charles Bigelow e Kris Holmes, appositamente per il progetto Go. Go è un sans-serif umanista simile al Lucida Grande, mentre Go Mono è monospaziato. Entrambi i font aderiscono al set di caratteri WGL4 e sono stati progettati per essere leggibili, con una grande altezza-x e forme delle lettere distintive. Sia Go che Go Mono rispettano lo standard DIN 1450, includendo uno zero barrato, una l
minuscola con una coda e una I
maiuscola con serif.
Nell'aprile 2018, il logo originale è stato ridisegnato dal designer di marchi Adam Smith. Il nuovo logo è un moderno e stilizzato "GO" inclinato verso destra con linee aerodinamiche che lo seguono. La mascotte del Gopher è rimasta la stessa.
Go soddisfa le esigenze della programmazione concorrente ed è stato progettato per ottimizzare i tempi di compilazione anche per hardware modesti. La sintassi è vicina al C eccetto per la dichiarazione dei tipi e per la mancanza di parentesi tonde nei costrutti for e if. Ha un sistema di garbage collection che si occupa autonomamente della gestione della memoria. Non include l'intercettazione di eccezioni, l'eredità dei tipi, le asserzioni e l'overloading dei metodi.
Hello World in Go:
package main
import "fmt"
func main() {
fmt.Printf("Hello, World")
}
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.