Methinx you could use rudimentary algebraic methods to arrive at your goal, consider:
@array1=qw(A B C);
@array2=qw(1 2 3);
is equivalent to/can be re-written as:
@array1=('A', 'B', 'C');
@array2=('1', '2', '3');
Also, the requirement can be re-written as:
%hash = (
array1=>[('A','B','C')],
array2=>[('1','2','3')]
};
So, substituting for
('A','B','C') &
('1','2','3'), into the re-written required result, gives:
%hash = (
array1=>[@array1],
array2=>[@array2]
};
But,
[@array] can be/usually is written as
\@array, hence,
%hash = (
array1=>\@array1,
array2=>\@array2
};
As required - also discoverable by reference to
perlreftut - as
moritz has
previously suggested.
A user level that continues to overstate my experience :-))