in reply to nested hashes and their usage e.g $foo{bar}{baz}

You can look at this as a two-dimension hash (in Perl world) or a two-tier tree (from a data structure view, or a real world view). This example use concepts from daily life may help you to understand it more easily:
use strict; my %currency; $currency{northamerica}{America} = "US Dollar"; $currency{northamerica}{Canada} = "Canadian Dollar"; $currency{asia}{Japan} = "Yuen"; $currency{asia}{China} = "RMB"; foreach my $continent (keys %currency) { foreach my $country (keys %{$currency{$continent}}) { print "in $continent/$country, people use $currency{$continent +}{$country}\n"; } }
In this case, the entities concerned (in the real world, not the computer would or Perl world) can be understand as a two-level tree, at the first level, we cut the world into continents, then at the second level, we further divide each continent into countries. In the computer world, or more precisely, in the world of Perl, we see a two-dimension hash as a good fit to represent this structure.

This is very useful, in Perl, multi-dimensional hash is one of the useful ways to store trees.