er,ackrl heP Just another
Changing $|-- to --$| like so:
sub _{@_<2&&return print@_;my@a;push@{$a[--$|]},$_ for
@_;_(@$_)for@a};_ split//,"huroP cels,tetah Jen akrr";
produces the required:
Just another Perl hacker,
See also:
Japhy explains where behaviour of --$| is documented.
Update: To further clarify this mysterious "flip-flop" behavior when $| is --'ed, but not when ++'ed, notice that running:
perl -le 'print --$| for 1..5'
produces:
1
0
1
0
1
while running:
perl -le 'print ++$| for 1..5'
produces:
1
1
1
1
1
BTW, this magical --$| flip-flop often produces the shortest Perl golf solutions when you need to flip-flop between two different values in a loop; for example, it was used in Re^2: Mini-Tutorial: Working with Odd/Even Elements and Spending Time on Saving Time [golf].
|