Beefy Boxes and Bandwidth Generously Provided by pair Networks DiBona
Do you know where your variables are?
 
PerlMonks  

Re: Ampersands and sub speed

by ysth (Canon)
on Oct 17, 2005 at 04:18 UTC ( [id://500673]=note: print w/replies, xml ) Need Help??

This is an archived low-energy page for bots and other anonmyous visitors. Please sign up if you are a human and want to interact.


in reply to Ampersands and sub speed

Just in case anybody missed it amongst the responses, let me emphasize:
  • Do not use the &foo; style of call without a really good reason.
  • (Converse: if you use &, also use () unless you have a really good reason.)
  • Don't use it when foo() doesn't use what it's passed. Explicitly say &foo().
  • Don't use it when you actually want to pass @_ along to foo. Say &foo(@_) if that's what you mean.
Even if you know all about the feature, it's just too easy to forget that something is being passed. And if a bug results, it can be hard to see the cause.

When should you use it? As an optimization. That is, after determining that the code isn't fast enough and determining that the code calling the function represents a significant part of the time used. But highlight what you are doing (and why) with a comment.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://500673]
help
Sections?
Information?
Find Nodes?
Leftovers?
    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.