johngg@shiraz:~ > perl -Mstrict -Mwarnings -E ' my @arr = ( 2, 6, 5, 7, 4, 3, 9 ); my @sub = shift @arr; push @sub, $arr[ 0 ] > $sub[ -1 ] ? shift @arr : do { shift @arr; () } while @arr; say for @sub;' 2 6 7 9