in reply to Populating a hash with two arrays
my %things; for (my $i = 0; $i < @people; $i++) { $things{$people[$i]} = $jobs{$i}; } [download]
This would be brain-dead only for Monks with a C background ;--)
A little more perlish would be a loop similar to broquaint's map:
my %hash; for my $i (0..$#people) { $hash{$people[$i]} = $jobs[$i]; } [download]
If you don't care about emptying @jobs you can also do:
my %hash; foreach my people (@people) { $hash{$people}= shift @jobs; } [download]
But really the hash slice is the most compact way to do it.