In article <[EMAIL PROTECTED]>,
        Eirik Berg Hanssen <[EMAIL PROTECTED]> writes:
> [EMAIL PROTECTED] (Philippe 'BooK' Bruhat) writes:
> 
>> Compare the classic "remove duplicate lines" one-liner
>>
>>     perl -ne'$s{$_}++||print' file
>>
>> with
>>
>>     perl -ne'$$_++||print' file
>>
>> Three characters in one shot!
> 
>   It has its limitations though.  Like namespaces:
> 
> ~$ perl -e 'print"a\n::a\nmain::a\n::main::a\n"; ' | perl -ne'$$_++||print'
> a
> ~$ 
> 
>   ... and missing newlines:
> 
> ~$ perl -e 'print"a\n1"; ' | perl -ne'$$_++||print'
> a
> Modification of a read-only value attempted at -e line 1, <> line 2.
> ~$ 
> 
> 
> Eirik
In real golfing the limitation that bites you most is the direct version 
of what causes the problem above: $$_ doesn't work as storage space if
$_ is a postive integer. Though this can sometimes be worked around by
using @$_ or $#$_

Reply via email to