La spécification du langage de programmation Go - Le langage de programmation Go

contenu

Version du 2 août 2023

Introduction

Il s'agit du manuel de référence du langage de programmation Go. La version pré-Go1.18, sans génériques, peut être trouvée ici. Pour plus d'informations et d'autres documents, consultez le site golang.org.

Go est un langage polyvalent conçu en gardant à l'esprit la programmation système. Il est fortement typé et dispose d'une collecte de déchets automatique, ainsi que d'un support explicite pour la programmation concurrente. Les programmes sont construits à partir de packages, dont les propriétés permettent une gestion efficace des dépendances.

La syntaxe est compacte et simple à analyser, ce qui permet une analyse facile par des outils automatiques tels que les environnements de développement intégrés.

Notation

La syntaxe est spécifiée en utilisant unevariantede la Forme étendue de la notation de Backus-Naur (EBNF) :

Syntaxe = { Production } . Production = nom_de_production "=" [ Expression ] "." . Expression = Terme { "|" Terme } . Terme = Facteur { Facteur } . Facteur = nom_de_production | jeton [ "…" jeton ] | Groupe | Option | Répétition . Groupe = "(" Expression ")" . Option = "[" Expression "]" . Répétition = "{" Expression "}" .

Les productions sont des expressions construites à partir de termes et des opérateurs suivants, par ordre croissant de priorité :

| alternance () regroupement [] option (0 ou 1 fois) {} répétition (0 à n fois)

Les noms de production en minuscules sont utilisés pour identifier les jetons lexicaux (terminaux). Les non-terminaux sont en CamelCase. Les jetons lexicaux sont encadrés par des guillemets doubles "" ou des backquotes ``.

Le formulaire a … b représente l'ensemble des caractères de a à b comme des alternatives. L'ellipse horizontale est également utilisée ailleurs dans la spécification pour indiquer informellement diverses énumérations ou extraits de code qui ne sont pas spécifiés plus en détail. Le caractère (par opposition aux trois caractères ...) n'est pas un jeton du langage Go.

Représentation du code source

Résumer
Le manuel de référence du langage de programmation Go est destiné à la version de Go1.18. Le langage est conçu pour la programmation système, est fortement typé et dispose d'une collecte de déchets. La syntaxe est compacte et simple à analyser. Le code source est représenté en texte Unicode encodé en UTF-8. Les commentaires peuvent être de deux formes : en ligne ou généraux. Les jetons du langage Go comprennent des identifiants, des mots-clés, des opérateurs et de la ponctuation, ainsi que des littéraux. Les littéraux d'entiers peuvent être exprimés en décimal, binaire, octal ou hexadécimal, avec la possibilité d'ajouter des caractères de soulignement pour améliorer la lisibilité.