use strict; use Data::Dumper; $Data::Dumper::Sortkeys = 1; my $object = bless {}, "MyMain"; $object->{a} = bless {}, "A"; $object->{b} = bless {}, "B"; $object->{c} = bless {}, "C"; $object->{a}->{var1} = "Pratik"; $object->{a}->{var2} = bless {}, "A1"; $object->{a}->{var2}->{name} = "Hello"; $object->{b}->{var1} = $object->{a}->{var2}; $object->{c}->{var1} = $object->{a}->{var2}; print Dumper($object); # # Start the magic. # my $dummy = bless {}, "A1"; $dummy->{name} = "CamelNeedsWater"; $object->{a}->{var2} = $dummy; print Dumper($object);