in reply to mying arrays?

Under strict you must declare every variable you use, scalar, array, hash doesn't matter.
my @email = ""; is plain wrong, because @mail is an array and "" is a scalar.

I suspect one of your misunderstandings is what 'value' a not explicitly defined variable has.
Scalars are simply undefined; arrays and hashes are just empty.

my @array; # emtpy array my @array = (); # empty array my %hash; # empty hash my %hash = (); # empty hash (not sure about this *blush*) my $scalar; # undefined scalar my $scalar = ""; # scalar with empty string as value
I found any of the following
perldoc perldata
perldoc perlref
perldoc perlreftut
to be very helpfull readings, for starters especially perlreftut - Mark's very short tutorial about references

regards,
tomte