# from Jenda Krynicky # on Saturday 24 November 2007 17:00: >I mean ... WHY would anyone want to write > > print L(qw(a b c))->map(sub {"|$_|"})->join(' '), "\n"; > >instead of > > print join( ' ', map {"|$_|"} qw(a b c)), "\n";
It is a flow from left to right rather than right to left. Each method returns a list object, so extra map()s, grep()s, and etc just get appended to the right -- as opposed to jumping back to the beginning of the construct to add another transformation (and then messing with more parenthesis.) >(or in this particular case > print "|", join( '| |', qw(a b c)), "|\n"; >)? Well, that would be bad practice because you've repeated your separator character and de-normalized the expression. If you just don't like the example, feel free to write a better one. --Eric