Difference between revisions of "Optimizing code"
From Dreamwidth Notes
(Rewriting a bit.) |
m (Typo.) |
||
Line 3: | Line 3: | ||
== Avoid shift == | == Avoid shift == | ||
− | The <code>shift()</code | + | The <code>shift()</code> function, used to take the first argument from the <code>@_</code> list, is slow. Instead: |
* For short functions (1-5 lines), use <code>$_[0]</code> for the first argument, <code>$_[1] for the second, etc. | * For short functions (1-5 lines), use <code>$_[0]</code> for the first argument, <code>$_[1] for the second, etc. |
Revision as of 17:52, 6 July 2009
This is a page on code optimization--practices that encourage efficient code.
Avoid shift
The shift()
function, used to take the first argument from the @_
list, is slow. Instead:
- For short functions (1-5 lines), use
$_[0]
for the first argument,$_[1] for the second, etc.
- For longer functions, use the following construct to assign the values to named scalars:
my ( $foo, $bar ) = @_;
(source)