Here's my guess:
c:\@Work\Perl>perl -wMstrict -le
"use List::MoreUtils qw(any);
;;
sub myfunc { return map { int rand 10 } 1 .. $_[0]; }
;;
my @List_new;
;;
UNTIL_TRUE: {
@List_new = myfunc(7);
any { $_ == 3 } @List_new or redo UNTIL_TRUE;
}
;;
print qq{@List_new};
"
0 1 6 1 8 1 3
Notes:
- List::MoreUtils::any() can be replaced with the built-in grep for short lists (for some definition of "short").
- any() may also be found in List::Util in later versions of Perl.
- The label UNTIL_TRUE is not needed, it's just documentary.
Give a man a fish: <%-{-{-{-<