On Wed, Dec 05, 2001 at 10:05:16AM -0500, Ala Qumsieh wrote:
> 
> Bernie writes:
> > On 5 Dec 2001, at 14:09, Eugene van der Pijll wrote:
> > 
> > > Bernie Cosell schreef op 05 december 2001:
> > > > Meta-question: since Perl is content to try to *call* 
> > '&main::;' is there
> > > > some trickery to *DEFINE* such a subroutine?  For example, trying:
> > > >    main:: { die; }
> > > > gets you what I would have expected in the '..&' case: a 
> > syntax error for a 
> > > > missing subroutine name.
> > > 
> > > perl -e'*;=sub {1}; print &;'
> > 
> > good heavens.. the actual subroutine name is semi-colon??  So 
> > the name isn't 
> > missing and isn't null, but is ';'.  I'm not sure that that 
> > doesn't make it 
> > MORE confusing to me --- Are there other punctuation marks 
> > that work in that 
> > context??
> 
> I was certainly amused when I understood what 11..& meant, but it didn't
> amaze me a single bit. Afterall, Perl defines the global variable $; so
> there already is a symbol table entry for ';', thus you can certainly define
> a subrouting called '::;'.
> 
> How someone would think of doing that is another question though :)


Yeah, but you know, one can leave out the final semi colon ....

    echo "Foo" | perl -nle '*;=sub{1};print&'


Abigail

Reply via email to