#!/usr/bin/perl use Data::Dumper; $Data::Dumper::Purity = 1; $old = { name => "bob" }; $young = { name => "bob jr" }; $old->{child} = $young; $young->{parent} = $old; $string = Data::Dumper->Dump([$old],[qw(old)]); undef $old; undef $young; eval "$string"; $check = Data::Dumper->Dump([$old],[qw(old)]); if ($string ne $check) { print "eek!\n"; } print "\n---\n$string---\n$check\n";