Issue #784 - 2026-08-03 - Perl Catalyst

latest | archive | edited by Mohammad Sajid Anwar
This edition was made possible by the supporters of our cause.
Don't miss the next issue!

Hi there,

I remember the release of Catalyst, MVC web application framework in 2005. It was the first time, I heard about MVC. Unfortunately, I never got to work with it until I joined my current work place. We have very well crafted application using Catalyst. The creator of Catalyst, John Napiorkowski, recently shared his plan to revisit Catalyst and named the project (working name), CatalystNext. The details of the project is shared in the post. I am going to use this opportunity to learn Catalyst from zero.

In case you missed, we just had two maintenance releases, Perl v5.40.5 and Perl v5.42.3. The highlights of both releases was security patches, CVE-2026-8376, CVE-2026-57432 and CVE-2026-13221. Thank you core team members.

I am a big fan of experimental class feature of latest Perl. Recently I came across a documentary titled, The Java Story. It brought back some old memories when I was offered to pick the languages: Perl and Java. No prize for the guessing the answer, I chose Perl. After watching the documentary, I decided to checkout how experimental class deals with Encapsulation, Reflection and Immutable Class. Please checkout the blog post below where I shared my findings.

I came across this talk, Regex Optimization From Hours to Second by Deven Corzine. I had to watch it few times to get my head around it. Talks like this make attending Perl conference worth it. Another talk that caught my eyes, All About Test2 by Chad Graham. Thanks to TPRC team for sharing the video.

Another exciting news, pperl, now has Perl v5.44 as compatibility target. Please checkout the details in the post.

Enjoy rest of the newsletter.

Mohammad Sajid Anwar


Announcements

Perl v5.40.5

by Steve Hay (SHAY)

The maintenace release of Perl v5.40.5 with security patches.

Perl v5.42.3

by Steve Hay (SHAY)

The maintenace release of Perl v5.42.3 with security patches.

ANNOUNCE: Perl.Wiki V 1.51, CPAN::MetaCurator V 1.27, etc

by Ron Savage (RSAVAGE)

The highlight of latest release of Perl.Wiki is CPAN::MetaCurator v1.27.


Articles

The Future Isn’t Evenly Distributed

by Dave Cross (DAVECROSS) LinkedIn

By analysing the request for support on a 25-year-old Perl CGI script that he recently got, Dave Cross explains why developers’ apps are usually lagging behind in technology. Developers should realise that technological advancements do not solely depend on innovations in technology but also on economic factors. Indeed, businesses usually do not require the latest tools, they seek a way to make yesterday’s solutions work today.

Immutable Class

by Mohammad Sajid Anwar (MANWAR) LinkedIn

In this post, I analyse the treatment of immutability in contemporary Perl by comparing and contrasting the explicit runtime optimisation provided by Moose to the experimental class features offered by core Perl concerning automatic enforcement of immutability from an external perspective.

Reflection/MOP

by Mohammad Sajid Anwar (MANWAR) LinkedIn

Here I document the evolution of code reflection and metaobject protocols from Lisp and CLOS all the way to contemporary object systems. And finally turn the attention to how Perl has evolved—starting with the first implementation of a symbol table with %main:: and the Moose framework's use of Class::MOP, and now to features that have become intrinsic to the language like the isa operator, __CLASS__ and capability testing via $obj->can().

CatalystNext: What Should We Keep, Change, and Rethink?

by John Napiorkowski (JJNAPIORK) LinkedIn

John Napiorkowski starts the conversation on CatalystNext, which refers to a new concept associated with the old Catalyst Perl web framework on the basis of PAGI technology. In this article, he weighs the benefits of keeping action-subroutine attributes rather than using route DSL, improving the syntax of the chained dispatch method, separating code bundles from URLs, and improving state/service boundaries while avoiding a fundamental issue of historical compatibility.

Moving Targets - PetaPerl 0.6.8

by Richard C. Jelinek LinkedIn

PetaMem has launched the new version 0.6.8 of pperl, increasing its minimum version requirement from now on to Perl 5.44. Some of the main highlights of the release include an implemented zero-setup native DBI that allows for PostgreSQL and MySQL support via FFI without any need for XS compiling.


The Weekly Challenge

The Weekly Challenge by Mohammad Sajid Anwar will help you step out of your comfort-zone. You can even win prize money of $50 by participating in the weekly challenge. We pick one champion at the end of the month from among all of the contributors during the month, thanks to the sponsor Marc Perry.

The Weekly Challenge - 385

by Mohammad Sajid Anwar (MANWAR) LinkedIn

Welcome to a new week with a couple of fun tasks "Uncommon Words" and "Outermost Parentheses". If you are new to the weekly challenge then why not join us and have fun every week. For more information, please read the FAQ.

RECAP - The Weekly Challenge - 384

by Mohammad Sajid Anwar (MANWAR) LinkedIn

Enjoy a quick recap of last week's contributions by Team PWC dealing with the "Base N" and "Special Binary Substrings" tasks in Perl and Raku. You will find plenty of solutions to keep you busy.

TWC384

by Ali Moradi

The solution set provided by Ali includes easy-to-read implementations in Perl, testable via Test::More. The basic conversion function works perfectly with custom symbols, and the binary substring method utilises brief regular expressions in order to achieve simplicity in its logic.

N Binary with Raku

by Arne Sommer LinkedIn

Arne makes use of Raku to tackle arbitrary base conversion (using multiple dispatch as well as built-in base and custom-character fallback logic for many bases up to 64) and identifies special binary substrings with the aid of subset typing, index iteration, and regex checking.

Perl Weekly Challenge: Week 384

by Jaldhar H. Vyas LinkedIn

Jaldhar's article about Raku's Metaobject Protocol in PWC 384 presents an interesting approach in dynamically wrapping Int.base() in order to accomplish base conversions up to Base 64. When combined with the elegant solutions in Perl and Raku, this post offers an elegant and educational solution to both challenges.

Special Bases

by Jorg Sommrey

Jorg's article is all about the comparison of Perl and J implementations. In Task 1, he dynamically creates an ASCII digit table which supports Base 94 without using magic literals in Perl. The function Math::Prime::Util::todigits in Perl is paired with the user-defined monadic/dyadic inverses for J. In Task 2, substring searching is converted from O(n^2) naive approach to the candidate expansion process by employing List::Gather in Perl and the fold conjunction (F:).

Perl Weekly Challenge 384

by W Luis Mochan LinkedIn

Luis's blog uses modern Perl syntax (try/catch, use v5.40) to produce amazing compact and expressive results. The regex-based technique for Task 2 effectively solves substring matching in a one-liner, while the mathematical checks in Task 1 are encapsulated neatly via a one-liner.

A Helpful Module and a Recursive Pattern

by Matthias Muth LinkedIn

The article by Matthias provides a fabulous class in Perl programming with high efficiency. In his solution of Task 1, he makes an effective use of Math::Prime::Util::todigits function in association with lookup tables. With the help of these tricks he limits the number of bases to 64. The solution crafted by Matthias in Task 2 is even more brilliant as he writes the entire code in just a single statement. He arrives at this potential solution due to great ingenuity of his approach, based on recursive regular expressions.

A heaven on earth, they call it Base-N Street

by Packy Anderson (PACKY) LinkedIn

Packy produced multi-language project across Perl, Raku, Python, and Elixir. The first task involved building a base-N radix array algorithm without using any built-in conversion tools to introduce the nuances between different languages such as floating-point truncating in Perl's int() as opposed to divmod in Python. The second task uses the same process but applies a non-destructive regex approach and verifies digit sums to deduplicate consecutive binary substrings in the four programming languages.

The Weekly Challenge #384

by Robbie Hatley LinkedIn

Robbie's article discusses a practical and performance-oriented solution to the jobs at hand. In Task 1, he purposefully employs Math::BigInt with GNU Multiple Precision (GMP) library for high-performance and precise conversion of bases. In Task 2, he makes use of a clear dual nested-loop algorithm to process the even-length substrings and obtain all the unique consecutive sequences in binary.

Are Your Substrings Based?

by Roger Bell West (FIREDRAKE)

The post written by Roger suggests straightforward and practical methods for solving both problems; it has an elegant solution regarding edge cases in base-N conversions and a clear method for tracking states when analyzing binary substrings. The explanations are lucid and the implementation in Crystal is neat, making it an interesting and informative piece for anyone working on algorithmic problems.

Base substrings

by Simon Green (SGREEN) LinkedIn

Simon contributes a very neat and effective method for Challenge 384, which emphasises early and proper input validation as well as a clear presentation of the custom base-64 alphabet ordering. The act of generating candidate character sets before worrying about the substring matching process also greatly reinforces the explanation's clarity and results in a highly readable dual Python/Perl solution guide.


Rakudo

2026.28/29/30 Thank you!

by Elizabeth Mattijsen (ELIZABETH) LinkedIn


Weekly collections

Events

Amsterdam PM bijeenkomst

August 04, 2026

Amsterdam PM bijeenkomst

September 01, 2026

Amsterdam PM bijeenkomst

October 06, 2026



You know, you could get the Perl Weekly right in your mailbox. Every Week.
Free of charge!

Just ONE e-mail each Monday. Easy to unsubscribe. No spam. Your e-mail address is safe.
Perl Weekly on Twitter RSS Feed of the Perl Weekly. Updated once a week