use List::Util qw[first]; my $val = first {defined} undef, 0;