my @x; push @x, [ 0 .. 3 ] for 0 .. 3; # creates a basic 2D array my @y = @x; $x[0][2] = 'foo'; print $y[0][2];