Go – Sujets divers

Quelques liens pour les bases de Go, sa culture et la pédagogie qui y est associée : pedagogie.html

Mascotte de Go

Le Hello World de Go se présente à peu près comme proposé à droite. Dans l'exemple canonique officiel, le texte affiché comprend des symboles Unicode tels quels, pour bien mettre en relief le support intrinsèque du texte UTF-8 par le langage.

Remarquez l'économie de symboles :

  • Les ; sont souvent optionnels
  • Les parenthèses autour de conditions (avec un if par exemple) ne sont pas requises
  • Par contre, un peu comme en JavaScript, une conséquence de l'absence de ; pour délimiter la fin d'énoncés est que la position des accolades est imposée. Go impose un format canonique pour le code
package main
import "fmt"
func main() {
   fmt.Printf("Coucou!\n")
}

Le compilateur Go est extrêmement rapide; le langage lui-même a été conçu pour faciliter la compilation rapide. Rob Pike (l'auteur principal du langage) est un concepteur d'expérience. La syntaxe du langage  a été pensée pour que le compilateur puisse prendre des décisions en lisant une seule fois le code, de gauche à droite, alors que dans d'autres langages (en particulier, C++) il faut parfois faire jusqu'à quatre passes sur le même code source pour comprendre un énoncé.

Par contre, les binaires générés par le compilateur sont gros (le Hello World ci-dessus, une fois compilé au format exécutable sur mon ordinateur personnel, occupe près de 2 Mo).

Quelques textes présentant le langage :

À propos de l'évolution du langage :

Go et ses outils :


Valid XHTML 1.0 Transitional

CSS Valide !