in reply to Re^2: Variable Abstraction with strict
in thread Variable Abstraction with strict

Re-reading what you say you want, this seems to meet all your requirements:
my (@a, @b, @c, @d); # create and populate arrays #Define a "Mapping hash": my %aref = (a=>@\a, b=>\@b, c=>\@c, d=>\@d ); # (Same as toolc's solution) my $x = "b"; # I want to access "@b" my $extracted_value_5_from_b = $aref{ $x }->[5]; my @entire_array_b_copy = @{ $aref{ $x } }; # Alternative, closer to the syntax you seek.. my $y = $aref{ b }; for ( @$y ){ # We are iterating through @b here ... } #-- Strict-compliant, maintainable version ... my $z=\@b; for ( @$z ){ # We are iterating through @b here ... }

     Syntactic sugar causes cancer of the semicolon.        --Alan Perlis