I believe that the problem here, as alluded to in Sifmole's post, is that the values are all being returned as a single list. It might be safest to use references as Sifmole says, but for something like what you have here you can get away with just changing the order of the return data.
use strict;
use warnings;
sub getStuff { return 6, qw(one two three four five six) }
my ($thing, @list) = getStuff();
print "my thing is $thing\n";
print "my list is @list\n";
This prints out:
$ perl list.pl
my thing is 6
my list is one two three four five six
Hope this helps,
Ira,
"So... What do all these little arrows mean?"
~unknown