|There's more than one way to do things|
To be completely pedantic the reason it 'works' is that they coded it that way! The reason it works without needing parens is as you say.
The precedence order is why you need to do stuff like this:
But that is another idiom I guess. This one lets you set declare $fix_up, set it to $old_str, and then modify $fix_up in one line, while leaving $old_str intact for future reference.....
In reply to Re: Re: Perl Idioms Explained - @ary = $str =~ m/(stuff)/g