my @required = qw/ apple orange pear grape banana /; my %missing = map { $_, 1 } @required; my @items = examine_items(); delete @missing{ @items }; push @items, keys %missing;