Raku is peaceful name

Raku is peaceful name.

I hope the discussion of names will decrease and talks about language features will increase.

In fact, both languages have been attacked from inside and outside of community because of problems of names.

Larry Wall made the decision to use Raku as its official name.

Why do not you try to reduce a lot of confusion of past days?

London.pm - First Tech Meet of the year 2019

Last Thursday, 28th February 2019, London Perl Mongers group organised first Tech Meet of the year 2019. Thanks to Zoopla for giving us space to hold the meet. Also for Pizzas and drinks.

In the past, I never made any effort to attend the Tech Meet. On 9th November 2017, I attended my first Tech Meet. It was to meet and greet Neil Bowers as the invitation had his name as one of the speakers. I blogged about it. Ever since, I haven't missed a single Tech Meet. It is so fun and entertaining.

This time also it was such a great event with mix of regular and new speakers. I got to meet LPW team after such a long time. Two members were still missing. Rick and Lee. Luckily, Julien and Katherine made it. Julien even gave a short talk that he is planning to give in the next German Perl Workshop as well but in German.

About the Various PANs

I've put together a short blog post explaining what the various PANs in the Perl ecosystem are responsible for.

Thanks to booking.com for sponsoring this blog post through their support of meta::hack.

Read the full post at: http://www.olafalders.com/2019/02/19/about-the-various-pans/

Lexical readonly state variables with PerlX::Let

I’ve released a new module PerlX::Let that adds a new “let” keyword so that you can do the following:

let $x = 1,
     $y = "string" {

  if ( ($a->($y} - $x) > ($b->{$y} + $x) )
    something( $y, $x );


with this, you can have lexical readonly variables, and avoid bugs due to typos.

A nice feature of this is that it uses state variables if the assigned value is a constant, and the value is a scalar (for Perls older than 5.28).

Let's use Raku more.

Raku Language.

Raku Programming.

Raku Programmer.

Raku Conference.

Raku Monger.

Raku WorkShop.

Raku Module.

Raku Script.

Array of Raku.

Hash of Raku.


etc, ...

Monthly Report - February

February had been much better than January in many ways. First, I didn't get any cold or flu and second I finally got my hand dirty for the first time with Perl 6. For me it is a big thing, I have been planning to do for more than a year now. It was one tweet that put everything in place, thanks to JJ Merelo and Simon Proctor. I must thank all the experts in Perl 6 IRC channel for all the help so far. It has been only one week and I already submit handful of PR to Perl 6 code base. I even joined the Perl 6 GitHub organisation that gives me exposure to what others are contributing. One other thing that happened in February, I announced Perl Weekly Challenge to public. I have had good response so far but I am looking for more people to come forward and join the team.

Let's take a quick look through last month activities.

CodeBuild 2019 or "How I built perl for less than 3 cents"

As part of my Perl/Lambda adventure, I wrote a make-a-perl script that provisioned an EC2 to compile a version of perl. I suspect everyone has their favorite way to compile a perl binary (either for free or not) but here's yet another way to leverage the many tools that AWS has to offer. TIMTOWTDI of course!

CodeBuild 2019 or How I built perl for less than 3 cents

A Perl 6 API for

Untrusted Numeric Input -- /[0-9]/

My blog entry of a couple weeks ago, Untrusted Numeric Input, dealt mainly with the problem of ensuring that supposedly-numeric input actually consisted only of ASCII digits. One of the ways to do this was to use the bracketed character class [0-9] instead of \d. This was documented as being portable as of Perl 5.21.5, and I made the statement that "I believe this behavior goes back further ..." This was clearly just hopeful hand-waving, and not very helpful.

This blog post documents my efforts to try to quantify the versions of Perl under which [0-9] is portable. For those disinclined to read further, my conclusion is that [A-Z], [a-z], [0-9], and their sub-ranges are portable among character sets as far back as Perl 5.8.0.

Hello Perl6

Ever since I received "Think Perl 6" book as a gift by Neil Bowers at the London Perl Workshop 2017, I have been planning to start learning Perl6 without any luck. I can think of many reasons why. One of the reasons was my confusion where to start. First I thought, I will start from the basics but then I easily get distracted if I don't have a target. Then I realised why not pick one of my Perl5 distributions and convert it into Perl6. That sounded great idea.

I tweeted about my intention and asked for help. Immediately two people kindly came forward, Scimon Proctor and JJ Merelo. With their guidance and support, I decided to create a basic Calculator distribution. Once I got the approval of the two mentors, I started preparing the ground.

Swiss Perl Workshop 2019 - Choose The Dates!

We are chuffed to announce The Swiss Perl Workshop 2019. This year the workshop will return to Olten, the venue that hosted the workshop in both 2014 and 2015. The workshop will be held in English, although of course other languages are welcome.

We are yet to decide on a date and have three options:

  • Friday 16th and Saturday 17th August 2019 (one week after TPC in Riga)
  • Friday 4th and Saturday 5th October 2019
  • Friday 11th and Saturday 12th October 2019

We have decided to take the Swiss approach and ask the people. So if you plan to attend this year's Swiss Perl Workshop please let us know which date you would prefer using either this link or the embedded poll below. The survey will remain open until the end of February.

Please spread the word, register, submit talks, and come enjoy a perl workshop in the cosy Flörli Olten.

We are looking for more sponsors. Interested? Please check the sponsoring page.

Git Repo in Shared Hosting #4 - Git Full Service Via SSH

In this fourth article we will now use SSH connection and SSH public keys to give access and also limit access to our repositories.


Be the first to author a Perl HTTP/3, QUIC, or QPACK library

This is a public service announcement.

By now, everyone has heard that HTTP/3 is coming. Based on Google's QUIC protocol that began as an experiment circa 2012, IETF QUIC and HTTP/3 are likely to become standards this year.

My employer, LiteSpeed Technologies, has been actively participating in the standardization process. We have also open-sourced several of our C libraries, QUIC Client and QPACK among them.

It would be cool if Perl were one of the first to get its own HTTP/3 or QPACK library. This is a call for a volunteer -- someone who is looking for a new project that is sure to get a lot of mileage. I would be glad to help augment our libraries to facilitate this process.

- Dmitri.

Perl Weekly Challenge

Taking clue from Gabor Szabo, the Chief Editor of PerlWeekly newsletter, when he tweeted last week and asked his followers what they would like to read in the next edition of PerlWeekly newsletter.

I would like to introduce "Perl Weekly Challenge" where anyone can put forward the challenge for others. It can be Perl5 or Perl6. We, developers, come across many challenges on a daily basis at work. Why not throw the same challenge and see how others would approach the challenge. Or if you have found the solution, share that as well by writing a very small blog either on blogs.perl.org or perl.com. I am sure the Chief Editor, David Farrel, would not mind to have it.

If you find writing blog is a challenge in itself then I can help you with it. Just send me the plain text and I will try to get it published on blogs.perl.org.

A Perl 6 API for (holidayapi.com)

AWS Lambdas & Perl Teaser

Just pushed version 0.0.1 of a framework for creating Perl Lambdas. Sort of a POC and WIP...comments welcome.


Screenshot 2019-02-02 at 3.52.15 AM.png

I'm not positive about this...

I'm not positive about this, but I'm not sure that things are behaving as I would expect. What would you expect the following lines to output?

perl -E 'say "x"; say -"x"; say -"-x"; say -"+x";'

For me, lines 1 and 2 make sense. Lines 3 and 4 are different than I would expect, but I'm not sure that they are really wrong. Does somebody want to explain what is really happening, and why it is that way?

Pull Request Tracker

Ever since, I submitted the 1500th Pull Request at the end of last year, I have been thinking of doing some kind of data analysis. I love playing with data as it can tell you something interesting every time you poke. I had so many questions in my head with regard to my PR journey e.g. How many authors I have contacted so far? How many distributions on GitHub I have submitted PR against? etc.

Luckily, I have been collecting data about every PR (nearly) that I have submitted so far with details like author, distribution name and pull request id. I have used that in the graph that I have on my personal website.

Pull Request Summary

Yearly/Monthly Breakdown

Exploring Type::Tiny Part 7: Creating a Type Library with Type::Library

Type::Tiny is probably best known as a way of having Moose-like type constraints in Moo, but it can be used for so much more. This is the seventh in a series of posts showing other things you can use Type::Tiny for. This article along with the earlier ones in the series can be found on my blog and in the Cool Uses for Perl section of PerlMonks.

For small projects, the type constraints in Types::Standard and other CPAN type libraries are probably enough to satisfy your needs. You can do things like:

   use Types::Common::Numeric qw(PositiveInt);
   has user_id => (
      is   => 'ro',
      isa  => PositiveInt,

Slides: A Website for Yancy

I gave a talk this month to Chicago Perl Mongers about the Mojolicious web framework, the Yancy CMS, the PODViewer plugin, and the Mojolicious export command. The talk introduces a simple Mojolicious::Lite application, and adding Yancy to edit the website's content inside the app. Then I explain how to make layout templates, and how to export a dynamic website as static HTML files.

This talk comes from my series of blog posts for the 2018 Mojolicious Advent Calendar: A Website For Yancy, A View To A POD, and You Only Export Twice.

Slides for the talk are available on my website

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl and offering the modern features you’ve come to expect in blog platforms, the site is hosted by Dave Cross and Aaron Crane, with a design donated by Six Apart, Ltd.