in reply to Re: iterating through array and saving matches to new array
in thread iterating through array and saving matches to new array

&& imposes scalar boolean context on the first argument. Therefore, the grep on line 4 iterates over @d only provided @b and @c aren't empty. To iterate over several arrays, use comma:
my @newb = grep $_ > 850, @b, @c, @d;

It's also a good idea to test the code before posting here ;-)

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,