in reply to variable interpolation

Yes, there are symbolic references.

> perl -e ' $vv='a'; $var='vv'; print $$var;'; a

You also might use eval() to construct an access to the variable. Preferable if $var might sometimes contain values that are not valid variable names like '('. Then eval() can trap the error.

> perl -e ' $vv='a'; $var='vv'; eval "print \$$var;" ' a