Migration from version 2 to 3Some features are no longer necessary in PLP 3. Because backwards compatibility would be too much of a mess, you need to convert existing scripts.
The underscore-blocks no longer exist. They are obsoleted by the fact that you can now set headers anywhere, as long as you haven't output anything before. To convert existing scripts, use Perl's BEGIN block feature:
This confusing feature wasn't used by many. It wasn't necessary either, because Perl already has subs for recurring things.
Inline double quotation
Another feature that lead to a lot of confusion. PLP now uses ASP/PHP style equal-signs. Please not that you can not add a semi-colon and another command.
In PLP 2, it was possible to use <(filename)> in code, and it would literally include the contents of the file at that place. However, that made it impossible to easily use regexes like
In PLP3, you can comment closing :> tags. That means that you need an extra line break if you had :> after #.
After all of this, you might like to know that PLP 3 is a lot faster, and supports mod_perl. Happy hacking!