in reply to Can I get the name of a variable passed to a subroutine?
I think I'd turn the logic round: call that routine with the name of the variable:
and eval() that string in your subroutine.
Hmm, one major flaw of this would be scoping: you'd need to really know that variable there, and that would mean you'd only be able to show global variables there. Maybe something could be done using closures, but since I don't exactly know what they are/look like I could be wrong.