Efficiency

While most of the work of developing may be simply getting your program working properly, you may find yourself wanting more bang for the buck out of your Perl program. Perl's rich set of operators, data types, and control constructs are not necessarily intuitive when it comes to speed and space optimization. Many trade-offs were made during Perl's design, and such decisions are buried in the guts of the code. In general, the shorter and simpler your code is, the faster it runs, but there are exceptions. This section attempts to help you make it work just a wee bit better.

If you want it to work a lot better, you can play with the Perl compiler backend described in "Compiling", or rewrite your inner loop as a C extension as illustrated in "Internals and Externals".

Note that optimizing for time may sometimes cost you in space or developer efficiency (indicated by conflicting hints below). Them's the breaks. If developing was easy, they wouldn't need something as complicated as a human being to do it, now would they?

Time Efficiency

Space Efficiency

Developer Efficiency

Maintainer Efficiency

Porter Efficiency

User Efficiency