Perl 🐪 Weekly #749 – Design Patterns in Modern Perl

Originally published at Perl Weekly 749

Hi there!

The big announcement is that Mohammad Sajid Anwar who runs The Weekly Challenge and who is the other editor of the Perl Weekly newsletter, has published his first book called Design Patterns in Modern Perl. You can buy it both on Amazon and on Leanpub. Leanpub gives you the option to change the price so you can also use this opportunity to give a one-time donation to him. As far as I know, Leanpub also gives a much bigger part of the price to the author than Amazon does. You can also ask them to send the book to your Kindle or you can upload it yourself. I already bought it and started to read it. Now you go, buy the book!

In just a few hours we are going to have the online meeting Perl Code-reading and testing. You can still register here.

Perl on WhatsApp: I am part of a lot of WhatsApp groups about Python and Rust and other non-tech stuff. I figured I could create one for Perl as well. If you are interested join here. There are also two groups on Telegram. One is called Perl 5 that has 141 members and the other one is called Perl Maven community that I created, because I did not know about the other one. The latter has 59 members. You are invited to join any or all of these channels.

I started a poll in the Perl Community Facebook group. There are already 63 votes. It would be nice if you answered too.

Enjoy your week!


Your editor: Gabor Szabo.

Announcements

Design Patterns in Modern Perl

Manwar, congratulations! Everyone else, go buy the book! (comments)

Articles

ANNOUNCE: Various updated wikis, including Perl.Wiki

Dotcom Survivor Syndrome – How Perl’s Early Success Created the Seeds of Its Downfall

I like the sentiment, but as one of the commenters pointed out there was PHP as well.

GitHub and the Perl License

In a nutshell, if you’d like to use ‘the Perl license’ you probably should include two separate license files. (comments)

Showcase: Localised JSON Schema validation in Perl + JavaScript (CodePen demo included!)

A small project that might interest anyone in dealing with form validation, localisation, and JSON Schema in their Perl web applications / REST API.

Web

Catalyst::Request body issues with the file position pointer

For those using the Perl Catalyst web framework in ways involving structured request bodies (e.g. API POSTs)…

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 Lance Wicks.

The Weekly Challenge – 350

Welcome to a new week with a couple of fun tasks “Good Substrings” and “Shuffle Pairs”. 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 – 349

Enjoy a quick recap of last week’s contributions by Team PWC dealing with the “Power String” and “Meeting Point” tasks in Perl and Raku. You will find plenty of solutions to keep you busy.

TWC349

Both solutions use a straightforward, single-pass approach that is perfectly suited for the problem. They process the input string only once, making them very efficient (O(n)) and demonstrating a solid grasp of fundamental algorithmic thinking.

Power Pointing

The post is an excellent, practical demonstration of Raku’s expressiveness and built-in functionality. It successfully showcases how Raku allows a programmer to transition from a straightforward, imperative approach to a concise, idiomatic, and highly readable functional solution.

More complex than it has to be

The post presents a fascinating and honest case study of over-engineering. Bob deliberately explores a complex, “enterprise-grade” solution to a simple problem, contrasting it with the obvious simple solution.

Meeting Strings

This is an exceptionally well-crafted post. It demonstrates a deep understanding of Raku’s idioms and standard library, transforming simple problems into masterclasses in concise, expressive, and functional programming.

moving and grepping

This is an exemplary post that demonstrates exceptional technical breadth, deep practical knowledge, and a clear, effective pedagogical style. It transcends being a mere solution set and serves as a masterclass in polyglot programming and database extensibility.

Perl Weekly Challenge 349

The post demonstrates both deep Perl knowledge and strong pedagogical skills, making complex solutions accessible while showcasing advanced language features.

Power Meets Points

This post demonstrates expert-level Perl programming with deep language knowledge and thoughtful engineering considerations. Matthias combines elegant solutions with practical performance analysis.

The Power of String

This is a high-quality technical post that successfully demonstrates how to solve the same problems in multiple programming languages while maintaining algorithmic consistency.

Powering to the origin

This post demonstrates creative problem-solving with elegant regex decrementing for Task 1 and a clever eval-based dispatch system for Task 2. Peter shows strong analytical thinking by carefully distinguishing between final-position and intermediate-position checks, and makes practical engineering trade-offs between cleverness and performance.

The Weekly Challenge #349

This is a well-structured, professional-grade solution with excellent documentation and robust code organization. Robbie demonstrates strong analytical thinking by carefully addressing potential ambiguities in the problem statement and explicitly warning against common algorithmic pitfalls.

Power Meeting

Roger demonstrates strong analytical skills by questioning the problem statement itself and providing robust solutions for different interpretations, showing both practical implementation skills and deeper algorithmic thinking.

Power Meeting

This is a clean, practical, and well-explained approach to the weekly challenges. Simon demonstrates strong fundamentals with a clear, step-by-step problem-solving methodology.

Weekly collections

NICEPERL’s lists

Great CPAN modules released last week.

Events

Perl Maven online: Code-reading and testing

December 1, 2025

Toronto.pm – online – How SUSE is using Perl

December 6, 2025

Paris.pm monthly meeting

December 10, 2025

German Perl/Raku Workshop 2026 in Berlin

March 16-18, 2025

You joined the Perl Weekly to get weekly e-mails about the Perl programming language and related topics.

Want to see more? See the archives of all the issues.

Not yet subscribed to the newsletter? Join us free of charge!

(C) Copyright Gabor Szabo
The articles are copyright the respective authors.

Total
0
Shares
Leave a Reply

Your email address will not be published. Required fields are marked *

Previous Post

From Monolith to Microservices without changing one line of code, thanks to the power of Inversion of Control (IoC)

Next Post

Transitioning to PMM: Fundamentals

Related Posts