Just another Perl shrine | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
Update: Please see Initial Devel::UncheckedOps, a macro for perl for notes on how print() can be overridden. Its a function of toke.c's Perl_keywords() function. The keywords with positive values aren't overridable (so says pp.c's pp_prototype function). I get the impression from S_scan_inputsymbol that glob() and readline()'s overrideability is more a function of explicit support than something handled by the prototype. It also got the impression it might have something to do with print's status as an indirect object method expecting a list. Some guesses anyway. Maybe this generalizes to: all functions overridable by CORE::GLOBAL:: have must prototypes or be explicitly supported by the perl parser (and the only known exceptions are glob() and readline()). Added: For those that care, I pulled the list of keywords from toke.c:Perl_keywords() that are marked as not being overridable. You'll notice glob() and readmore() are in this list - again, it works only because of explicit support.
In reply to Re: !Overriding Builtin print
by diotalevi
|
|