#!/usr/bin/perl my @bla=(0..9); sub dmp_macro { my $var=shift; (my $var2=$var) =~ tr/@%$//d; use Data::Dumper; return "print Data::Dumper->Dump([\\$var],['\*$var2'])" } print dmp_macro('@bla'),"\n"x3; eval (dmp_macro qw/@bla/); #### print Data::Dumper->Dump([\@bla],['*bla']) @bla = ( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 );