#!/usr/bin/env perl use strict; use warnings; use Data::Dumper; my $arr=[1,2,3]; $arr[1] = 12; # Global symbol "@arr" requires explicit package name (did you forget to declare "my @arr"?) my $y = {a=>1,b=>2}; $y['c'] = 3; # Global symbol "@y" requires explicit package name (did you forget to declare "my @y"?) print Data::Dumper->Dump([$arr, $y], [qw/arr y/]); __END__ Global symbol "@arr" requires explicit package name (did you forget to declare "my @arr"?) at C:\usr\local\share\PassThru\perl\perlmonks\11116710.pl line 7. Global symbol "@y" requires explicit package name (did you forget to declare "my @y"?) at C:\usr\local\share\PassThru\perl\perlmonks\11116710.pl line 10. Execution of C:\usr\local\share\PassThru\perl\perlmonks\11116710.pl aborted due to compilation errors. #### $arr->[1] = 12; $y->{'c'} = 3; #### #!/usr/bin/env perl use strict; use warnings; use Data::Dumper; my $arr=[1,2,3]; #$arr[1] = 12; # Global symbol "@arr" requires explicit package name (did you forget to declare "my @arr"?) my $y = {a=>1,b=>2}; #$y['c'] = 3; # Global symbol "@y" requires explicit package name (did you forget to declare "my @y"?) #print Data::Dumper->Dump([$arr, $y], [qw/arr y/]); # did you really mean: $arr->[1] = 12; $y->{'c'} = 3; print Data::Dumper->Dump([$arr, $y], [qw/arr y/]); __END__ $arr = [ 1, 12, 3 ]; $y = { 'a' => 1, 'c' => 3, 'b' => 2 };