use Storable qw(dclone); use Data::Dumper; use strict; use warnings; my @Array1 = ([10,15],[20,30]); my $Array2 = dclone(\@Array1); $Array1[0][1] = 71; # Does change translate? print Dumper($Array2); # Nope