Code below is not fully tested, but it shows one feature of Data::Dumper — cross reference. Basically, $b content won't get dumped.
Dumper will show $b is an alias of (another pointer) @a.
If you don't want cross reference, then call Dumper() multiple times, each with a single argument.
$b = @a;
print Dumper @a, $b