my %state; @state{1..9}=(); #### $state{$name} = undef; #### @state{@names} = (1) x @names; #### my $count = grep {$_} values %state; #### my $setname = (grep {$state{$_}} keys %state)[0]; #### my @setnames = grep {$state{$_}} keys %state; #### # same as ordinary perl print $foo if $state{$one} && $state{$tother};