use List::Util 'reduce'; sub hash_char_count :prototype(\%) { my $href = shift; return reduce {$a += length $b} 0, %$href; } my %hash = (foo => 'bar', baz => 1, fiddle => 'faddle'); print hash_char_count(%hash), "\n";