The definition of "human readable" really depends on which human you are talking about. Data::Dumper
is OK for relatively small data structures that must be interpreted by a Perl programmer. Not so good if you are using a deeply nested structure or asking a receptionist to read the data.
YAML provides a more condensed format for dumping data structures and it is reasonably easy to read. It was originally developed by people working on a more compact version of Data::Dumper
called Data::Denter.
If you need to work with huge structures or provide data to a non-programmer, you are better off building a custom format that is easy to read and hides complexity. In these cases you want to automate checks and summarize as much as possible. People suck at reviewing big lists of data. If this is the case, then you will need to design your own format that meets the needs of your particular data set and intended audience.