Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Perl News

( #23771=superdoc: print w/replies, xml ) Need Help??

For the latest news on what's happening in the Perl world, check out these sites:

If you have a Perl-related news item you'd like to share, you may post it in the Perl News section. Please try to avoid duplicating news; but pointers (with summaries) to important stories on other sites are acceptable here.

Perl News
Perl 6 Fundamentals
4 direct replies — Read more / Contribute
by reisinge
on May 09, 2017 at 06:53

    A daemon that is properly started with no controlling terminal will never receive SIGHUP from the OS. Thus, it is convenient to repurpose SIGHUP to tell the daemon to read its configuration file. -- Steven W. McDougall
Type::Tiny 1.2 Coming Soon
1 direct reply — Read more / Contribute
by tobyink
on May 05, 2017 at 08:11

    Or 1.002000, because it uses Moo-like versioning.

    The Type::Tiny 1.1 (1.001_00x) development cycle has been going on since September 2014. Apparently I'm either very concerned about stability or very lazy. You can make up your own minds about that.

    But Type::Tiny 1.2 should be released in a few weeks. If your application uses Type::Tiny, you may want to download the latest development release and check that nothing breaks. (It shouldn't, but you never know until you try.)

    The headline changes are:

    • Type::Params now has compile_named and validate_named.
    • Type::Tiny's constraint parameter may be a string of code.
    • Fixed bug where Types::Standard::Int would sometimes accept an overloaded object. (It never should.)
    • Various performance enhancements and bug fixes.

    I'll explain the first two in more detail, because they're interesting.


    Type::Params is a module for type-checking the parameters to functions. For example, specifying that the $quantity parameter should be an integer. It was mostly written with positional parameters in mind, like eat_apples(2, "red").

    Named parameters like eat_apples( quantity=>2, colour=>"red" ) could be made to work, but it was a bit of a hack. The Type::Tiny 1.1 development versions introduced a better way of doing this. It's not only neater, but it provides better error messages and it benchmarks a lot faster. Below is some code showing the old way and the new way.

    Examples on Gist

    String Constraints

    Normally when creating a type constraint, you'd provide a coderef which checks the variable $_ to see if it should pass the constraint. Recently the development versions of Type::Tiny have started accepting a string of Perl code instead. This can not only lead to very concise code, but is an easy way to allow Type::Tiny to optimize its checks. (You can manually optimize them even better by telling Type::Tiny how to inline type checks, but that requires a little bit of extra effort.)

    Examples on Gist
19th German Perl Workshop 2017 in Hamburg from 26th to 28th June 2017
No replies — Read more | Post response
by LanX
on Apr 29, 2017 at 11:04

    19th German Perl Workshop 2017 in Hamburg from 26th to 28th June 2017

    About the German Perl Workshop conference 2017

    The German Perl Workshop is an Open Source conference for everyone, organized by community of the Perl Programming Language yearly in Germany. The 2017 GPW takes place in 21107 Hamburg, Mengestraße 20. The Venue is called Bürgerhaus Wilhelmsburg. Most of the talks will be held in German, but talks in English are welcome as well of course.

    The workshop starts on June 25th with the preconference meeting. For accompanying family members with we have organized a partner program on the 3 conference days.

    Call for papers

    Cheers Rolf
    (addicted to the Perl Programming Language and ☆☆☆☆ :)
    Je suis Charlie!

    Note: I'm not an organizer

Perl Developer Survey 2017 results are available
8 direct replies — Read more / Contribute
by vrk
on Apr 27, 2017 at 04:07

    The Perl Developer Survey ran from 7th of March to the 14th of April, 2017. I hope you took part! The results have now been published: part 1 part 2

    I find the results intriguing, but since this was a self-selected (not random nor representative) sample, it's quite hard to generalise the results to the overall Perl developer population. Did you take part? Do you find yourself in the pie charts?

berrybrew, the Perlbrew for Windows, has been updated
No replies — Read more | Post response
by stevieb
on Mar 31, 2017 at 13:12

    Along with the clone feature I added last cut that allows you to clone instances for specific projects/purposes, this new version provides a fetch command that automatically updates the Perls that are available, displaying the most recent point release available for each major version.

    If any of your existing installed versions don't match what available lists, we'll automatically register those instances as custom, which allows them to continue to be maintained by berrybrew. Here's the full blog post.



Github makes your code, your code
1 direct reply — Read more / Contribute
by stevieb
on Mar 22, 2017 at 17:43

    I applaud this decision by Github, as it allows expression to be expanded without fear. I do understand the concern that an employer could have (as I did run a few small businesses), but hacking out a few lines of code while at work during a break, for Open Source projects shouldn't be claimed as corporate IP.

    This is a thing of opinion depending on the reader, but I digress. I am totally in favour.

    What's mine is mine.

    In other news, it is critically important to actually read the documents you sign when you start on with a new employer.

Switching from lang X to Y
8 direct replies — Read more / Contribute
by stevieb
on Mar 19, 2017 at 18:48

    This was posted at Perl is dead over on with that title (here's the actual follow-through link to the real article). The title is over the top, but this topic has been brought up here recently, so I thought I'd put it here for our mathematicians/statisticians and other interested Monks.

    Personally, I don't care. I love Perl, and likely always will. I have learned other languages while knowing Perl, but as I learn other languages, I just learn new ways to incorporate what I know into Perl. Learning new things and incorporating them into experience I've gained is how I approach everything anyways.

new module - Protocol::FIX
1 direct reply — Read more / Contribute
by basiliscos
on Mar 17, 2017 at 06:11

    Hello! is glad to annonce new module Protocol::FIX to parse and serialize FIX messages (Financial Information eXchange).

    With the module it now becomes much more easy to create your own FIX-client or FIX-server in Perl.

    Any comments or feedback are very welcome!

    WBR, basiliscos.
WebGear - HTML5 parser with JS
3 direct replies — Read more / Contribute
by novikovag
on Mar 10, 2017 at 16:39
    Perl HTML5 parser with JS support was released

Perl Developer Survey 2017
1 direct reply — Read more / Contribute
by hippo
on Mar 07, 2017 at 08:51
Interest in Perl as a "weekend" language rising
1 direct reply — Read more / Contribute
by nysus
on Feb 12, 2017 at 09:07

    Of note: The top weekend programming languages — based on GitHub’s activity

    And in my estimation, the recent, highly publicized StackOverflow analysis is probably severely flawed because once all the popular questions are answered, they generally never have to get asked again and so fewer questions would have tags from languages that have been around awhile. So their analysis would skew toward brand new languages. Using GitHub would seem to be a much more accurate sample method.

    $PM = "Perl Monk's";
    $MCF = "Most Clueless Friar Abbot Bishop Pontiff Deacon Curate";
    $nysus = $PM . ' ' . $MCF;
    Click here if you love Perl Monks

Strawberry Perl 5.24.1 released
No replies — Read more | Post response
by Athanasius
on Feb 04, 2017 at 01:04
New Perl 6 book coming out with O'Reilly
8 direct replies — Read more / Contribute
by Laurent_R
on Jan 31, 2017 at 12:50
    Dear sisters and brothers,

    it is my pleasure to announce that O'Reilly has posted an early release (i.e. incomplete and not fully edited version) of a new book on Perl 6:

    Think Perl 6 - How to Think Like a Computer Scientist

    by Laurent Rosenfeld (with Allen B. Downey)

    Early Release Ebook ISBN: 978-1-4919-8048-4 | ISBN 10: 1-4919-8048-6

    At this point, only the first seven chapters (about 150 pages out of a total 450 pages) are publicly available as HTML. The book is fully written, the rest only needs to be processed in O'Reilly's editing process, which should take another few weeks.

    If you want to learn how to program and think like a computer scientist, this practical guide will get you started on your programming journey with Perl 6, the new version of the popular programming language. Ideal for beginners, Think Perl 6 contains numerous exercises with multiple solutions and over 1,000 code examples. Even experienced programmers will learn a lot from this book, especially those familiar with Perl 5.

    In an interview with LinuxVoice (July 2015), Larry Wall said: “We do think that Perl 6 will be learnable as a first language.” Hopefully this book will contribute to make this happen.

    If you see anything that would need to be corrected or that could be improved, please kindly send your comments to the following address: think (dot) perl6 (at) gmail (dot) com.

    O'Reilly's page on this book:

Are Restricted/Locked Hashes a Failed Experiment?
2 direct replies — Read more / Contribute
by Corion
on Jan 31, 2017 at 05:21

    demerphq kicked off a discussion on of the hash APIs that Perl (and perl) provides. The discussion also has a parallel strand on

    In my interpretation, the discussion moved on from removing restricted and locked hashes towards realizing that restricted and/or locked hashes can get a different hash implementation in the backend than plain hashes and maybe even plain hashes can get different implementations. This makes me somewhat happy because I really like using locked hashes for DBI query results and don't really care for the (potential) performance overhead.

    Other people see a benefit in removing the performance overhead incurred by supporting restricted hashes, which I don't know about. But as these people know more about the internals, I'm inclined to trust them on their judgement as well.

    Allowing different implementations of hashes opens up the interesting question of if or how a hash can move from one implementation to another, and personally I expect that only to happen for explicit assignments:

    use feature 'superfast_hashes'; my %hash_with_implementation_A = ( foo => 'bar' ); no feature 'superfast_hashes'; my %hash_with_implementation_B = %hash_with_implementation_A;

    If you have an opinion either way on the features of locked / restricted hashes, consider participating in the discussion either on or

    choroba points out more discussion on reddit r/perl.

Text::CSV back in sync again
No replies — Read more | Post response
by Tux
on Jan 29, 2017 at 08:47

    Because of the hard work of Kenichi Ishigaki (ISHIGAKI on CPAN, charsbar on IRC), Text::CSV is back in sync with Text::CSV_XS again. That must have been an awful lot of work. THANK YOU!

    Enjoy, Have FUN! H.Merijn

Add a piece of Perl News
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, 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, 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.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others taking refuge in the Monastery: (4)
    As of 2019-11-19 21:14 GMT
    Find Nodes?
      Voting Booth?
      Strict and warnings: which comes first?

      Results (96 votes). Check out past polls.