Don't forget to escape square brackets, the left one is all you really need to worry about: [@array]
Anyways ... [@array] copies the contents of the array into a new anonymous array reference. I think the name for the collection of those contents is called a list ... so you could say that the l-value of [@array] is an anymous array that contains a copy of @array's list ... i think. Understanding the difference between Perl's lists and arrays can be tricky, and i often get it wrong. :/
Here is some more code to study:
#!/usr/bin/perl -l use strict; use warnings; use Data::Dumper; my @array = 0..4; my $ref1 = \@array; my $ref2 = \@array; my $copy1 = [@array]; my $copy2 = [@array]; print Dumper $ref1,$copy1; print for ($ref1,$ref2,$copy1,$copy2); undef @array; print Dumper $ref2,$copy2;
jeffa
L-LL-L--L-LL-L--L-LL-L-- -R--R-RR-R--R-RR-R--R-RR B--B--B--B--B--B--B--B-- H---H---H---H---H---H--- (the triplet paradiddle with high-hat)
In reply to 5Re: passing information into a hash
by jeffa
in thread passing information into a hash
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |