Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

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
Type::Tiny 1.2.0 Released
1 direct reply — Read more / Contribute
by tobyink
on Jun 01, 2017 at 06:44

    So, Type::Tiny 1.2.0 (a.k.a. 1.002000 using Perlish decimals) is now available on CPAN.

    Highlights since 1.0.0:

    • Type::Params now has compile_named and validate_named.

      This allows for:

      sub add_pet { state $check = compile_named( name => Str, species => Str, age => Optional[Int], ); my $args = $check->(@_); ...; # do stuff with $args hashref }

      It's faster than the old compile slurpy Dict hack.

    • Type::Tiny's constraint parameter may be a string of code.

      isa => Int->where('$_ % 2 == 0')  # even numbers only
    • Types::Standard::CycleTuple added.

      my $type = CycleTuple[Str, ArrayRef, Int]; $type->assert_valid( [ "foo", [], 42, "bar", [], 21 ] ); # ok $type->assert_valid( [ "foo", [], 42, "bar", [], 2.1 ] ); # throws exc +eption
    • Types::Standard::RegexpRef now accepts blessed objects where $object->isa('Regexp'). This plays better with re::engine::* pragmas.

    • Fixed bug where Types::Standard::Int would sometimes accept an overloaded object. (It never should.)

    • Various performance enhancements and bug fixes.

Perl 5.26.0 Available
2 direct replies — Read more / Contribute
by kcott
on May 31, 2017 at 01:09

    The latest version of Perl, 5.26.0, has just been released.

    Here's the changes since 5.24.1: perldelta.

    I've been using 5.25.9 (developer release) for a while because I wanted the Unicode 9.0 support. This included new features now available in 5.26.0. A couple I particularly liked are:

    Indented Here-documents

    This allows you to now write (after a couple of levels of indentation):

    { ... { ... my $boilerplate = <<~'EOT'; Boilerplate text ... EOT ... } ... }

    Previously, without being able to add the tilde, meant code typically looked liked this (and the readability gains from indenting code were somewhat diminished):

    { ... { ... my $boilerplate = <<'EOT'; Boilerplate text ... EOT ... } ... }
    New regular expression modifier /xx

    While the '/x' modifier allows whitespace in most of a regex to improve readability, the '/xx' modifier allows whitespace in bracketed character classes also. This can be used to separate ranges and individual characters. As a quickly contrived example to capture the first and last character of strings starting with alphanumerics and ending with certain punctuation characters:

    /^([A-Za-z0-9]).*?([!@#$%^&*])$/ / ^ ( [A-Za-z0-9] ) .*? ( [!@#$%^&*] ) $ /x / ^ ( [ A-Z a-z 0-9] ) .*? ( [ ! @ # $ % ^ & * ] ) $ /xx

    It's been discussed here a few times recently, but also note: Removal of the current directory (".") from @INC

    While I was writing this, I was also installing 5.26.0 (under perlbrew). I see it has already completed successfully: so that much works and, at least for me, didn't take very long.

    — Ken

Free Perl6 book
3 direct replies — Read more / Contribute
by zentara
on May 29, 2017 at 09:18
    Hi, there was alot of posts recently concerning books for Perl6. In the Perl Newsletter today, Think Perl6 was announced. A restricted free pdf download is also available, under the Creative Commons License . See Think Perl6 .

    Remember, before commenting, I have not read it yet, but upon a speed-read, it looks like a nice way for Perl5'ers to get used to the more efficient syntax usage in Perl6.

    I'm not really a human, but I play one on earth. ..... an animated JAPH
The Perl Conference Amsterdam 2017 - CFP is open
No replies — Read more | Post response
by Tux
on May 27, 2017 at 10:05

    We're on-line. Finally:

    We invite you to participate in The Perl Conference, which will take place in August 2017 in Amsterdam, The Netherlands. These meetings were formerly known as YAPC::EU, the yearly meeting of Perl Mongers in Europe.

    The Perl conferences started off as grassroots user meetings, with discussions among Perl Mongers, and has grown from there. The focus is on enjoying the ideas of others, discovering new concepts, and feeling the enthusiasm of fellow programmers in the Perl (5) and Perl 6 programming languages.

    This years' theme is: High-end Perl. We are open for contributions: sponsors and potential speakers, please continue reading this page.

    Call for papers can be found here.

    Hope to meet a lot of you folk there in person.

    Enjoy, Have FUN! H.Merijn
The 2017 Perl Conference in Washington DC (YAPC::NA::17) is June 18-23.
No replies — Read more | Post response
by davido
on May 26, 2017 at 16:36

    The Perl Conference, 2017 will be held this year in Washington DC, at the US Patent and Trademark Office, from June 18 through June 23rd. This is the conference that many of us have affectionately known as YAPC::NA::17.

    If you haven't registered yet, please do so as soon as possible. We want to make sure we're providing the best possible experience for our participants, and to that end, accurate registration counts are helpful, plus there is still time to get the early-bird rate.

    The conference website is:

    We have talks scheduled from many of the best speakers known to the Perl community; Damian Conway, Sawyer X, Randal Schwartz, Mark Jason Dominus, Ricardo Signes, and so many other strong speakers that I feel silly having mentioned the few that I did.

    For those seeking additional enlightenment there are tutorials and master classes offered (by additional registration) on topics such as:

    • Perl in a Day (John Anderson)
    • Introduction to Moose (Dave Rolsky)
    • Perl Second Best Practices (Randal Schwartz)
    • Unicode and Associated Punishments (Ricardo Signes)

    The conference is being held in the amazing US Patent and Trademark Office, and will feature an event in the National Inventors Hall of Fame Museum.

    Early registration cost is $250, and late registration (Main event T-minus 14 days) will be $350, so there is still time to get your ticket, but you'll want to act sooner than later.

    From the Perl Foundation Conferences Committee I would like to thank all of the organizers who have been working for many months on this, and who are currently neck deep in work tying up loose ends and caring for the many details. It will be a great conference because of everyone in the Perl community who attends and participates, but it couldn't be a great conference without those organizers who have devoted so much of their time and energy laying the foundation for the rest of us to build upon.

    I am excited and can't wait to see everyone there.

    Also posted to


Introducing sparrow custom repositories
No replies — Read more | Post response
by melezhik
on May 16, 2017 at 10:03

    Upcoming version of Sparrow comes with support for custom repositories -

    To run your own custom repository:

    1. cpanm
    2. nestd start --host --port 4441
    3. curl -d name=Foo -d url=url-remote-git-repository

    To setup sparrow client to use custom repository:

    1. cpanm # you will need the latest Sparrow
    2. nano ~/sparrow.yaml
    3. sparrow index update # to get index from

    Please try this out and report any issues, suggestions and ideas.

    Thanks, Alexey
Call for Papers - German Perl-Workshop 2017
No replies — Read more | Post response
by Happy-the-monk
on May 15, 2017 at 06:55


    (The German Perl workshop is an annual open-source-conference/workshop for everyone. It is being organised by the Perl programming language community. In 2017, it takes place at Bürgerhaus Wilhelmsburg, Mengestraße 20, 21107 Hamburg, Germany. Most talks are held in German language (but many presenters keep their slides in English for the international participants). Talks in English are very welcome, if submitted by non-German speakers.

    This year's German Perl workshop is coming to Hamburg! As every workshops relies on the speakers and talks, the website now will accept your talk proposals for regular talks, lightning talks and/or tutorials

    The German Perl workshop tries to offer a variety of talks and topics. This means, while we generally prefer Perl talks over other topics, we still consider and may accept non-Perl talks when they relate to a Perl programmer's technical biosphere.

    Please consider submitting a talk! (Best before 7 June.)
    Otherwise, just participate, if you have no talk to submit.

    The workshop takes place from 26 through 28 June 2017 at the Bürgerhaus Wilhelmsburg in Hamburg, Germany and we would like you to participate.

    Register -

    See you in Hamburg!



    German language original follows:

    (Der Deutsche Perl-Workshop ist eine jährlich in Deutschland stattfindende Open-Source-Konferenz für jedermann, organisiert von der Community der Programmiersprache Perl. Er findet 2017 im Bürgerhaus Wilhelmsburg, Mengestraße 20, 21107 Hamburg statt. Die Vorträge werden überwiegend in Deutsch gehalten, Vorträge auf Englisch sind ebenfalls sehr willkommen.)

    Hallo, dieses Jahr findet der Deutsche Perl Workshop in Hamburg statt. Ein Workshop ist nichts ohne Vortragende, daher ist die Webseite jetzt freigeschaltet für das Einreiche von Vorträgen, Lightning Talks oder Tutorials.

    Der Deutsche Perl Workshop versucht wie immer, ein breites Spektrum an Vorträgen anzubieten und das bedeutet, dass wir zwar prinzipiell bevorzugen, wenn ein Vortrag Perl berührt, aber es sind auch andere Themen möglich, solange es hinreichend technisch ist.

    Bitte überlege, ob Du einen Vortrag einreichen möchtest (idealerweise vor dem 7. Juni), oder nimm einfach so am Workshop Teil wenn Du keinen Vortrag halten kannst. Der Workshop findet vom 26. Juni bis zum 28. Juni im Bürgerhaus Wilhelmsburg in Hamburg statt und wir hoffen, dass Du teilnimmst.

    Register -

    Bis dann

    Cheers, Sören

    Créateur des bugs mobiles - let loose once, run everywhere.
    (hooked on the Perl Programming language)

Perl5 to Java compiler - first release
2 direct replies — Read more / Contribute
by fglock
on May 13, 2017 at 13:28

    Posted in

    The "perlito5.jar" file provides a perl-like command line:

        java -jar perlito5.jar -I src5/lib -e ' print "hello, World!\n" '
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.

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 all is quiet...

    How do I use this? | Other CB clients
    Other Users?
    Others lurking in the Monastery: (4)
    As of 2018-02-20 04:36 GMT
    Find Nodes?
      Voting Booth?
      When it is dark outside I am happiest to see ...

      Results (267 votes). Check out past polls.