http://qs321.pair.com?node_id=11116151


in reply to unable to eval dumped hash

G'day nysus,

Writing the Dumper output to a file, manually opening that file, manually copying its contents, then manually pasting into a script, does not seem like a very sensible way to go. Even if you're using less manual steps — e.g. 'cat dumper.out >> script.pl' or 'G:r dumper.out' from 'vim script.pl' — I still wouldn't recommend it. You should not have to edit your code every time the data changes. Consider reading the Dumper output directly in your script.

"I tried getting rid of $VAR1 ..."

Perhaps Data::Dump would be a better choice:

$ perl -e ' use Data::Dumper; use Data::Dump; my $x = { a => 1, b => [1,2,3] }; print "*** From Data::Dumper ***\n"; print Dumper $x; print "*** From Data::Dump ***\n"; dd $x; ' *** From Data::Dumper *** $VAR1 = { 'b' => [ 1, 2, 3 ], 'a' => 1 }; *** From Data::Dump *** { a => 1, b => [1, 2, 3] }

Also take a look at Storable, JSON and YAML (those last two also have XS versions which will be faster).

— Ken