http://www.perlmonks.org?node_id=831382


in reply to Re: Dumping variables but DRY and simple
in thread Dumping variables but DRY and simple

Ok this goes somehow in the direction of code generation like Smart::Comments with the difference that you can still safely use it in production code.

But then I would rather prefer to insert an eval-macro solution giving me the opportunity to change details dynamically at central place:

#!/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/);

output:

print Data::Dumper->Dump([\@bla],['*bla']) @bla = ( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 );

(OK I admit, it's not only lisp-ish, it's even uglier ;-)

Cheers Rolf