Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: Why upgrade perl?

by tobyink (Abbot)
on May 20, 2013 at 09:12 UTC ( #1034306=note: print w/ replies, xml ) Need Help??


in reply to Why upgrade perl?

5.16+ has much better Unicode support than 5.10.1, including the "unicode_strings" feature (where all strings are treated as Unicode except in the scope of use bytes or use locale), and the fc function which is useful for case-insensitive string comparisons.

Perl 5.16 has the __SUB__ keyword which acts as a coderef pointing to the current sub. This is useful for writing anonymous recursive functions.

5.14+ supports the package NAME BLOCK syntax, which is cute, but isn't going to change your world.

use v5.12 (or above) automatically enables use strict, reducing some typing.

The yada-yada operator, introduced in Perl 5.12 is handy during development.

There are beginning to be a few nice CPAN modules like Switch::Plain, Fun and Try that use the pluggable keyword API introduced in Perl 5.12/5.14.

Whether these are compelling enough reasons to upgrade will depend a lot on how you use Perl, and what you use it for. I'd certainly suggest having a copy of Perl 5.18 on a development machine to make sure that the code you write runs on it; whether you deploy it for production use is a different matter though.

package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name


Comment on Re: Why upgrade perl?
Select or Download Code
Replies are listed 'Best First'.
Re^2: Why upgrade perl?
by poulhs (Beadle) on May 22, 2013 at 07:51 UTC

    use v5.12;
    versus
    use strict;
    is not much reduced typing ;-)
    (I know it gives more than just strict)

      use v5.12; is less typing than use v5.10; use strict; though.

      package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1034306]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (13)
As of 2015-07-29 21:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (269 votes), past polls