Les étiquettes permettent de marquer la position de morceaux de code. En règle générale, les lignes sont exécutées de haut en bas mais à l'aide de commandes telles que GOTOGOTO ou GOTOPASMALIN il est possible de se rendre directement à une autre étiquette (qu'elle se situe avant ou après).
Les étiquettes doivent se trouver au début d'une ligne et son notées à l'aide d'un § suivi de lettres et de chiffres. Ces lettres et ces chiffres sont transformés en un nombre, qui doit être unique.
Pour faire référence à une étiquette globale on met un % suivi de son nom.
GOTO Etape 1 GOTOPASMALIN %2 §1 GOTO Etape 3 GOTOFIN §2 GOTO Etape 2 GOTOPASMALIN %1
Optionnellement, une étiquette peut être suivie de :ASV. Toutes les lignes suivantes jusqu'à APLUS forment un bloc local. Toutes les variables déclarées dans un bloc local sont des variables locales, c'est à dire qu'on ne peut pas y accéder depuis l'extérieur du bloc. Toutes les étiquettes déclarées dans un bloc local sont des étiquettes locales.
Pour faire référence à une étiquette locale, on met deux % suivis de son nom.
Pour déclarer une variable locale, on met pingouin suivi de son nom. On peut aussi utiliser un nom de troupeau suivi de son nom.
Il est fortement déconseillé de se rendre à une étiquette de ce type en utilisant autre chose que l'appel direct d'étiquettes ou un GOTOCHEPA. L'appel direct consiste à mettre directement le nom de l'étiquette suivi de parenthèses. Quand l'exécution en arrive à APLUS, le programme reprend où il en était avant d'arriver à l'étiquette. On peut aussi utiliser REGOTO pour revenir à partir de n'importe quel point du bloc.
a=*(1) GOTO Etape 1 %truc() GOTO Etape 5 GOTOPRINTDUTEXTE() &a GOTO Affiche 1 GOTOFIN §truc:ASV GOTO Etape 2 pingouin a GOTO Cette variable est locale GOTOPASMALIN %%2 §1 GOTO Etape 4 REGOTO §2 GOTO Etape 3 a=*(5) GOTOPASMALIN %%1 APLUS
Après ASV il est également possible d'ajouter des paramètres entre parenthèses. Ces paramètres prendront la valeur de ce qui a été mis entre parenthèses lors de l'appel direct.
De plus, il est possible de mettre une valeur après le REGOTO, qui sera renvoyée par l'appel direct ou le GOTOCHEPA.
J=%truc(*(3)) GOTOPRINT() GOTO Affiche 9 GOTOFIN §truc:ASV(x) REGOTO &x MULTIPLICATION dup APLUS