in reply to function call / return philosophies

Why not? Put that example in the docs, and it should be quite clear to the reader.

If you want to avoid any confusion, create an alias such that the calling convention becomes:

my $name = county_name_by_id($dbh, 23); my $name_refs = county_names_by_ids($dbh, [12, 25, 7, 13]);

You don't have to advertise it's really the same function.