#
# initialisation
#
@home = ( "couch", "chair", "table", "stove");
@temp = qw( foo bar); # quote words
@ones = (1) x 80; # fills with 80 ones
@arr = ((map { 19 + $_ * 0.1} (1 .. 5)), # @arr receives 10 elements, the
(map { 22 + $_ * 0.2} (1 .. 5))); # first is 19.1, the last 23
#
# manipulation
#
@whatever = @home; # copies the items
$home[0] = "door"; # set the first element
($s1, $s2, $s3, $s4) = @home;
@temp = (@foo, @bar, &SomeSub); # interpolation of sublists
($a, $b, @rest) = split;
$home = @stuff; # $home gets 4 (length)
$home = scalar( @stuff); # $home gets 4 (length)
print $#home; # subscript of the last element
@home = (); # clear list
$#home = -1; # clear list
scalar( @x) == $#x + 1; # always true
print "$home[-1]\n"; # print last element
#
# Array references
#
$ra = \@ARGV; # reference to an array
$ra = [1, 2, 3]; # reference to an anon array
print " -- @$ra \n";
$$ra[0] = "January";
$ra->[0] = "January";
${$ra}[0] = "January"; # a block returns a reference