Perl/Istruzioni etichetta

Wikibooks, manuali e libri di testo liberi.
Jump to navigation Jump to search


Etichetta[modifica]

Le etichette individuano una istruzione o un blocco. Le etichette da sole non servono molto, ma con dei costrutti particolari come goto, redo, next, last è possibile sfruttare meglio le loro potenzialità:

<ETICHETTA>:<istruzione>
<ETICHETTA>:{
            ... istruzioni ...
            }

per esempio è possibile:

 ETICHETTA_UNO: print "etichetta uno\n";

 ETICHETTA_DUE: 
 {
    print "etichetta due\n";
 }

 my $b = 15;
 ETICHETTA_TRE : while ( $b < 20 )
                 {
                     print " etichetta tre ($b)\n"; 
                     $b++;
                 }

In questo modo, un blocco o una istruzione "assume" un nome (un'etichetta). Questo non deve essere confuso con il nome di una funzione.

NOTA TECNICA: ha fatto la sua comparsa la parola chiave my; questa parola serve per delimitare la zona di validità (lo scope) della variabile (in questo caso) o di una funzione, a quella in cui viene dichiarata. In pratica, in un altro contesto del programma, questa variabile non sarà accessibile.

Goto (da non usare)[modifica]

Come dice il manuale del Perl, l'uso del goto non è per nulla consigliato, anzi deve essere limitato. Il suo uso "mal accettato" è quello di indicare una ETICHETTA. In questo modo il programma "torna" o "va" al punto indicato. Poiché, appunto, se ne sconsiglia l'uso, non verranno dedicate ulteriori righe a questa istruzione.