Lezioni pratiche sulla programmazione in Perl

Variabili array
Come abbiamo accennato in precedenza, il linguaggio Perl, distingue il tipo di variabili limitandosi a due soli gruppi, e cioè le variabili scalari e le variabili array.
Si definisce un array una sequenza ordinata di valori scalari, in grado di distinguere un unico valore. Come di consueto, nel linguaggio Perl, anche l'impiego di array risulta semplice e flessibile, risolvendo agevolmente le situazioni più ostiche. Vediamo quindi un esempio pratico per rendere meglio l'idea:

@collaboratori=('Fabio', 'Davide', 'Alessandro', 'Salvatore');
$c=@collaboratori;

print "Io, Giordano ho $c collaboratori, ed insieme cerchiamo di dare corpo al nostro sito\n";
print "i miei $c collaboratori si chiamano @collaboratori\n";
print "ma mentre io, $collaboratori[0], $collaboratori[1] e $collaboratori[2] ci diamo da fare\n";
print "$collaboratori[3], non si è ancora fatto sentire";

Bene, come potrete notare, ci è bastato creare un array di valori per poterci sbizzarrire nella creazione di testi stravaganti, ognuno di voi potrà scegliere i valori che vorrà ed in qualsiasi numero. Se prestate ulteriolmente attenzione all'esempio noterete che con la definizione del nostro array abbiamo creato anche un numero di variabili scalari pari al numero dei valori specificati all'interno dell'array, richiamabili in qualsiasi momento dal nostro script, fate molta attenzione a iniziare il conteggio da 0 e non da 1. Vediamo a titolo di esempio, come far stampare su stringhe differenti i valori di ogni scalare definito in un array:

@a=('qui','quo','qua');
# definiamo il valore dell'array
print "$a[0]\n";
# chiediamo di stampare il primo scalare
# definito dall'array @a chiamando lo scalare
# con lo stesso nome e cioè $a
print "$a[1]\n";
print "$a[2]\n";
print "$a[3]\n";
# questo richiamo non darà alcun errore, 
# in quanto l'array @a non definisce un quarto elemento
# per risultato otterremo solo un ritorno accapo
# ottenuto dall'escape \n, mentre $a[3] verrà semplicemente
# ignorato, (questa si che è flessibilità!!!)

Torniamo adesso all'esempio dei miei collaboratori, ed ampliamo il programma nel seguente modo:

@collaboratori=('Fabio', 'Davide', 'Alessandro', 'Salvatore');
$c=@collaboratori;

print "Io, Giordano ho $c collaboratori, ed insieme cerchiamo di dare corpo al nostro sito\n";
print "i miei $c collaboratori si chiamano @collaboratori\n";
print "ma mentre io, $collaboratori[0], $collaboratori[1] e $collaboratori[2] ci diamo da fare\n";
print "$collaboratori[3], non si è ancora fatto sentire\n";
@a=@collaboratori;
push(@a,'Giordano');
$a=@a;
print "In tutto siamo $a e ci chiamiamo @a\n";

Come potete vedere le cose che si possono fare con le array sono infinite, ma infinitamente semplici, come ad esempio uguagliare un array ad un altro, rompere il contenuto di un array tramite il comando push per aggiungere altri elementi, ecc ecc.
Per oggi abbiamo dato una bella infarinatura sugli array, nella prossima lezione vedremo di addentrarci più nel dettaglio.