foreach my $lang (@langs) { foreach my $project (@projects) { foreach my $target (@targets) { my $dynamically_growing_hash{$lang}{$project}{$target} = something; my $dynamically_growing_hash{$lang}{$project}{$target}{'sub_characteristic_1'} = something_else; } } }