#!/usr/bin/perl -CSDA use utf8; use Modern::Perl qw{2017}; use Data::Dumper; $Data::Dumper::Sortkeys = 1; my $h = {a => 1, b => "", c => 2}; my $d1 = Dumper($h); printf "grep: %s\n", (join " ... ", grep { $_ } $$h{a}, $$h{x}, $$h{b}, $$h{c}); printf "test: %s\n", $$h{y} ? "yes" : "no"; my $d2 = Dumper($h); $d1 eq $d2 or die "\nFAIL! h{x} modified, h{y} not modified... why?\n\n$d1\n$d2";