in reply to Changing a variable name

Going with your clarification, you can do things with minimal mutilation (to your existing code) with the following trick:

my %param; foreach ( param ) { $param{$_} = param($_); }

%param is a hash whose keys are the parameter names and whose values are the corresponding values. Just change every param("foo") within the qq[] to $param{foo}.

Philosophy can be made out of anything. Or less -- Jerry A. Fodor