use strict; use warnings; use Data::Dump; my $file = Practice::File->new('foo'); { my $dir = Practice::Dir->new('bar'); $file->add_dir($dir); } dd $file; __DATA__ bless({ dir => undef, name => "foo" }, "Practice::File")