in reply to Assigning value to the array elements

Erm, it appears that you want to tie scalars to individual elements of an array if I'm reading your question correctly. Why exactly you'd want to do this and what it'd gain you is escaping me at the moment but the easiest way to get the behavior would be to make $first and friends references to elements of @vars.

my @vars; my $second = \$vars[1]; my $i = 0; for ( qw( able baker charlie ) ) { $vars[ $i++ ] = $_; } print "second: ", $$second, "\n";

But again, what that'd be useful for isn't really clear. Read perlreftut and perlref, and perhaps explain what you think doing this buys you. You could also do something with a tied scalar, but that's slightly more complicated.