G'day aartist,

The Miscellaneous section of the online perldoc shows, amonst other things, all the deltas. Use this to determine new features (that are available in later versions) and changes to features (which are incompatible with, or require workarounds for, older versions).

Perl 5.10.1 introduced changes which were incompatible with 5.10.0, so it's important to know which of those you're using. Perl 5.18.0 made a number of features experimental that previously weren't: workarounds are documented so you don't get masses of "experimental feature" warnings.

The version you develop in should generally match the version used in production. You can write code in one version that will happily run in an earlier version; however, you'll need to be very aware of all the differences — if you don't have a solid familiarity with those differences, developing and running in the same version is probably the better choice.

Beyond additional features, each new version will include bug fixes, optimisations, and so on: this is a good reason to use the latest stable version. Certain CPAN modules require particular versions: this could be a reason to upgrade. If you're using Unicode, you'll find newer Perl versions support more recent Unicode versions (I wrote a fair bit about that in "Re: printing Unicode works for some characters but not all").

For my personal projects, I usually run the latest 5.x.0. If I see some major benefit introduced in 5.x.1, 5.x.2, or later, I'll upgrade; however, I don't do that very often. I'm currently running 5.26.0; I haven't upgraded to 5.26.1 which, at the time of writing, is the latest stable version.

When I post code in response to questions on this site, I'll generally write code that should be able to be run with any version of Perl 5. When I include a feature introduced in a specific version, I make that very clear (and often provide a workaround for earlier versions).

"Is it ok to use ( I do not have a choice)?"

It's very unclear what you're actually asking here. What does "it" refer to? What do you mean by "ok"? What is the actual "choice" you've been given (or has been forced upon you)? How is that "choice" relevant in this context. If you can answer those questions, or rephrase your original question, I can probably provide a better answer.

"What are the features of newer version of perl you cannot live without or make a good use of it?"

I wouldn't say there are any features I can't live without; although, there are many features that I'll readily use where available (and, perhaps, be a little disappointed when they aren't). There's really too many to list. In "Perl 5.26.0 Available" I listed some of the features I particularly liked in that version.

— Ken


In reply to Re: Perl version usage by kcott
in thread Perl version usage by aartist

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.