##
( $foo, $bar, @return{ @keys } ) = 1 .. 10;
####
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
my %return;
my @value = qw( foo bar baz quux );
$_ = uc $_
for @{ [ @return{ qw( a b c d ) } = @value ] };
print Dumper( \%return ), Dumper( \@value );
=begin output
$VAR1 = {
'c' => 'baz',
'a' => 'foo',
'b' => 'bar',
'd' => 'quux'
};
$VAR1 = [
'foo',
'bar',
'baz',
'quux'
];