Wed May 27 22:50:39 2026
EVENTS
 FREE
SOFTWARE
INSTITUTE

POLITICS
JOBS
MEMBERS'
CORNER

MAILING
LIST

NYLXS Mailing Lists and Archives
NYLXS Members have a lot to say and share but we don't keep many secrets. Join the Hangout Mailing List and say your peice.

DATE 2026-02-01

HANGOUT

2026-05-27 | 2026-04-27 | 2026-03-27 | 2026-02-27 | 2026-01-27 | 2025-12-27 | 2025-11-27 | 2025-10-27 | 2025-09-27 | 2025-08-27 | 2025-07-27 | 2025-06-27 | 2025-05-27 | 2025-04-27 | 2025-03-27 | 2025-02-27 | 2025-01-27 | 2024-12-27 | 2024-11-27 | 2024-10-27 | 2024-09-27 | 2024-08-27 | 2024-07-27 | 2024-06-27 | 2024-05-27 | 2024-04-27 | 2024-03-27 | 2024-02-27 | 2024-01-27 | 2023-12-27 | 2023-11-27 | 2023-10-27 | 2023-09-27 | 2023-08-27 | 2023-07-27 | 2023-06-27 | 2023-05-27 | 2023-04-27 | 2023-03-27 | 2023-02-27 | 2023-01-27 | 2022-12-27 | 2022-11-27 | 2022-10-27 | 2022-09-27 | 2022-08-27 | 2022-07-27 | 2022-06-27 | 2022-05-27 | 2022-04-27 | 2022-03-27 | 2022-02-27 | 2022-01-27 | 2021-12-27 | 2021-11-27 | 2021-10-27 | 2021-09-27 | 2021-08-27 | 2021-07-27 | 2021-06-27 | 2021-05-27 | 2021-04-27 | 2021-03-27 | 2021-02-27 | 2021-01-27 | 2020-12-27 | 2020-11-27 | 2020-10-27 | 2020-09-27 | 2020-08-27 | 2020-07-27 | 2020-06-27 | 2020-05-27 | 2020-04-27 | 2020-03-27 | 2020-02-27 | 2020-01-27 | 2019-12-27 | 2019-11-27 | 2019-10-27 | 2019-09-27 | 2019-08-27 | 2019-07-27 | 2019-06-27 | 2019-05-27 | 2019-04-27 | 2019-03-27 | 2019-02-27 | 2019-01-27 | 2018-12-27 | 2018-11-27 | 2018-10-27 | 2018-09-27 | 2018-08-27 | 2018-07-27 | 2018-06-27 | 2018-05-27 | 2018-04-27 | 2018-03-27 | 2018-02-27 | 2018-01-27 | 2017-12-27 | 2017-11-27 | 2017-10-27 | 2017-09-27 | 2017-08-27 | 2017-07-27 | 2017-06-27 | 2017-05-27 | 2017-04-27 | 2017-03-27 | 2017-02-27 | 2017-01-27 | 2016-12-27 | 2016-11-27 | 2016-10-27 | 2016-09-27 | 2016-08-27 | 2016-07-27 | 2016-06-27 | 2016-05-27 | 2016-04-27 | 2016-03-27 | 2016-02-27 | 2016-01-27 | 2015-12-27 | 2015-11-27 | 2015-10-27 | 2015-09-27 | 2015-08-27 | 2015-07-27 | 2015-06-27 | 2015-05-27 | 2015-04-27 | 2015-03-27 | 2015-02-27 | 2015-01-27 | 2014-12-27 | 2014-11-27 | 2014-10-27 | 2014-09-27 | 2014-08-27 | 2014-07-27 | 2014-06-27 | 2014-05-27 | 2014-04-27 | 2014-03-27 | 2014-02-27 | 2014-01-27 | 2013-12-27 | 2013-11-27 | 2013-10-27 | 2013-09-27 | 2013-08-27 | 2013-07-27 | 2013-06-27 | 2013-05-27 | 2013-04-27 | 2013-03-27 | 2013-02-27 | 2013-01-27 | 2012-12-27 | 2012-11-27 | 2012-10-27 | 2012-09-27 | 2012-08-27 | 2012-07-27 | 2012-06-27 | 2012-05-27 | 2012-04-27 | 2012-03-27 | 2012-02-27 | 2012-01-27 | 2011-12-27 | 2011-11-27 | 2011-10-27 | 2011-09-27 | 2011-08-27 | 2011-07-27 | 2011-06-27 | 2011-05-27 | 2011-04-27 | 2011-03-27 | 2011-02-27 | 2011-01-27 | 2010-12-27 | 2010-11-27 | 2010-10-27 | 2010-09-27 | 2010-08-27 | 2010-07-27 | 2010-06-27 | 2010-05-27 | 2010-04-27 | 2010-03-27 | 2010-02-27 | 2010-01-27 | 2009-12-27 | 2009-11-27 | 2009-10-27 | 2009-09-27 | 2009-08-27 | 2009-07-27 | 2009-06-27 | 2009-05-27 | 2009-04-27 | 2009-03-27 | 2009-02-27 | 2009-01-27 | 2008-12-27 | 2008-11-27 | 2008-10-27 | 2008-09-27 | 2008-08-27 | 2008-07-27 | 2008-06-27 | 2008-05-27 | 2008-04-27 | 2008-03-27 | 2008-02-27 | 2008-01-27 | 2007-12-27 | 2007-11-27 | 2007-10-27 | 2007-09-27 | 2007-08-27 | 2007-07-27 | 2007-06-27 | 2007-05-27 | 2007-04-27 | 2007-03-27 | 2007-02-27 | 2007-01-27 | 2006-12-27 | 2006-11-27 | 2006-10-27 | 2006-09-27 | 2006-08-27 | 2006-07-27 | 2006-06-27 | 2006-05-27 | 2006-04-27 | 2006-03-27 | 2006-02-27 | 2006-01-27 | 2005-12-27 | 2005-11-27 | 2005-10-27 | 2005-09-27 | 2005-08-27 | 2005-07-27 | 2005-06-27 | 2005-05-27 | 2005-04-27 | 2005-03-27 | 2005-02-27 | 2005-01-27 | 2004-12-27 | 2004-11-27 | 2004-10-27 | 2004-09-27 | 2004-08-27 | 2004-07-27 | 2004-06-27 | 2004-05-27 | 2004-04-27 | 2004-03-27 | 2004-02-27 | 2004-01-27 | 2003-12-27 | 2003-11-27 | 2003-10-27 | 2003-09-27 | 2003-08-27 | 2003-07-27 | 2003-06-27 | 2003-05-27 | 2003-04-27 | 2003-03-27 | 2003-02-27 | 2003-01-27 | 2002-12-27 | 2002-11-27 | 2002-10-27 | 2002-09-27 | 2002-08-27 | 2002-07-27 | 2002-06-27 | 2002-05-27 | 2002-04-27 | 2002-03-27 | 2002-02-27 | 2002-01-27 | 2001-12-27 | 2001-11-27 | 2001-10-27 | 2001-09-27 | 2001-08-27 | 2001-07-27 | 2001-06-27 | 2001-05-27 | 2001-04-27 | 2001-03-27 | 2001-02-27 | 2001-01-27 | 2000-12-27 | 2000-11-27 | 2000-10-27 | 2000-09-27 | 2000-08-27 | 2000-07-27 | 2000-06-27 | 2000-05-27 | 2000-04-27 | 2000-03-27 | 2000-02-27 | 2000-01-27 | 1999-12-27

Key: Value:

Key: Value:

MESSAGE
DATE 2026-02-09
FROM Gabor Szabo
SUBJECT Subject: [Hangout - NYLXS] [Perlweekly] #759 - Perl on LinkedIn
From hangout-bounces-at-nylxs.com Mon Feb 9 05:44:36 2026
Return-Path:
X-Original-To: archive-at-mrbrklyn.com
Delivered-To: archive-at-mrbrklyn.com
Received: from www2.mrbrklyn.com (www2.mrbrklyn.com [96.57.23.82])
by mrbrklyn.com (Postfix) with ESMTP id D55321640F6;
Mon, 9 Feb 2026 05:44:34 -0500 (EST)
X-Original-To: hangout-at-www2.mrbrklyn.com
Delivered-To: hangout-at-www2.mrbrklyn.com
Received: by mrbrklyn.com (Postfix, from userid 1000)
id 3FFC71640F5; Mon, 9 Feb 2026 05:44:31 -0500 (EST)
Resent-From: Ruben Safir
Resent-Date: Mon, 9 Feb 2026 05:44:31 -0500
Resent-Message-ID: <20260209104431.GA23329-at-www2.mrbrklyn.com>
Resent-To: hangout-at-mrbrklyn.com
X-Original-To: ruben-at-mrbrklyn.com
Delivered-To: ruben-at-mrbrklyn.com
Received: from s.wrqvtzvf.outbound-mail.sendgrid.net
(s.wrqvtzvf.outbound-mail.sendgrid.net [149.72.126.143])
(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
(Client did not present a certificate)
by mrbrklyn.com (Postfix) with ESMTPS id 282BB1640EC
for ; Mon, 9 Feb 2026 01:47:16 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=szabgab.com;
h=content-type:date:from:mime-version:subject:to:cc:content-type:date:
from:subject:to;
s=s1; bh=dpIS9W2qlWmtnpHJRYz1BahZeeS3cnqDNg8DpGlSlMU=;
b=An3GfG8CNIq9efQzScrFXYbZkrScgi61ZD/L4WpvqA2EWxsiwQNNNpAAXU0bey8O3vBw
d3jQLdMv3o7CCMZW8pwmqOzN2e5OZnQ76UjmKdStfK7Ung5JD4nn8VsWBdFL8CXL7TgXEq
XrGRGwuUQv7ws8ga6zh9seO/5z3cMOllgELUM2+5Fta/pXfDfkbIjS69Y2Jf1pgRrYTsXI
OwAoJ90CKtLP7ue8cQZhChG7FgBIHWNQHY5AodBu9+ivdBorchwPCAt3zG4CQ6RBlHz5mR
J+4an+gc+hQKs0oCskMnz2NM7lpeFMiFnwBxKW5DmBcA/mS2WswvCbDlyFoI3/hg==
Received: by recvd-5cfbd549cb-qnvmg with SMTP id
recvd-5cfbd549cb-qnvmg-1-698982F2-2C
2026-02-09 06:47:14.878005993 +0000 UTC m=+83285.252188741
Received: from MjA0MzMyMDc (unknown) by geopod-ismtpd-7 (SG) with HTTP
id QVK-HCA5SpmrMgwz51iNgQ Mon, 09 Feb 2026 06:47:14.696 +0000 (UTC)
Date: Mon, 09 Feb 2026 06:47:14 +0000 (UTC)
From: Gabor Szabo
Mime-Version: 1.0
Message-ID:
X-SG-EID: =?us-ascii?Q?u001=2EfEeT3imdomNYTgM3CPMr=2F5Dkst8c96g=2FUCTCSTQhFzPFq1p+hf5OYWVNg?=
=?us-ascii?Q?tIP=2F6ApeYX=2FpC2EXA4Tg86ZYWUY1S4Tu9g9MwDm?=
=?us-ascii?Q?3fixtzpUPtNH27R083uLy6ZiAQErWkHlp9TF=2FtB?=
=?us-ascii?Q?P0bgJOZQY8qaCuuJe5AkITl800YaDf63OE2CPzm?=
=?us-ascii?Q?LEBbFsN315yNV7FjbAkZnZGX0tEpVEqkWrcm0yh?=
=?us-ascii?Q?Q=3D=3D?=
To: ruben-at-mrbrklyn.com
X-Entity-ID: u001.JvYq+PmxR+Jk4HAvLs9YyA==
Subject: [Hangout - NYLXS] [Perlweekly] #759 - Perl on LinkedIn
X-BeenThere: hangout-at-nylxs.com
X-Mailman-Version: 2.1.30rc1
Precedence: list
List-Id: NYLXS Tech Talk and Politics
List-Unsubscribe: ,

List-Archive:
List-Post:
List-Help:
List-Subscribe: ,

Content-Type: multipart/mixed; boundary="===============0493153006=="
Errors-To: hangout-bounces-at-nylxs.com
Sender: "Hangout"

--===============0493153006==
Content-Type: multipart/alternative; boundary=93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6

--93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0

Perl Weekly=20

https://perlweekly.com/

You can read the newsletter on the web, if you prefer.
https://perlweekly.com/archive/759.html



Hi there!

6 years ago we had an edition in which I wrote a bit about Perl on LinkedIn
( https://perlweekly.com/archive/457.html ). Back then I collected some
basic stats about the Perl groups on LinkedIn. I checked them again: The
Perl Mongers ( https://www.linkedin.com/groups/40830/ ) group has 7,635
members (down from 8,283). The Perl Developer (
https://www.linkedin.com/groups/3686926/ ) group has 3,587 members (up from
3,122). There is also a group called Perl (
https://www.linkedin.com/groups/106254/ ) with 18,994 that I apparently
forgot to mention the last time.

Besides those groups there is also the Perl Maven (
https://www.linkedin.com/showcase/perl-maven/ ) page I maintain with 845
followers and my own personal page ( https://www.linkedin.com/in/szabgab/ )
with 5,998 followers.

Even if you don't use LinkedIn on a daily basis I'd like to invite you to
send a connect request to me ( https://www.linkedin.com/in/szabgab/ ). That
way I'll have a better chance knowing who are the readers of the Perl
Weekly.

Also a reminder that tomorrow we'll have another session of the Online Perl
code-reading an open source contribution ( https://luma.com/perl-maven )
and not long after that there will be meeting of the Boston Perl Mongers (
https://mobilizon.us/search?search=3DBoston+Perl )

Enjoy your week!

--
Your editor: Gabor Szabo.


Articles

=20
Mojo with WebSocket
https://theweeklychallenge.org/blog/mojo-with-websocket/
=20
Known for its real=E2=80=91time web capabilities, Mojo seemed like the pe=
rfect
framework to experiment with WebSockets. What better way to test it than
building a live chat room?
--------------

=20
Beautiful Perl feature: BLOCKs
https://dev.to/damil/beautiful-perl-feature-blocks-2o4
=20
BLOCK : sequence of statements; Lexical scope; Lexical scopes in Python
are not like Perl; Lexical variables; Shadowing variables from higher
scopes; Lexical pragmata
--------------

=20
Beautiful Perl features - introduction to the series
https://dev.to/damil/beautiful-perl-features-introduction-to-the-series-b=
6a
=20
Expressiveness of the Perl programming language. Perl vs other languages =
:
Compare facts, not opinions.
--------------

=20
Dancer2 + Dancer2::Plugin::DBIC::Async + HTMX
https://theweeklychallenge.org/blog/dancer2-dbic-async-htmx/
=20
=20
--------------

=20
Building a Solana Telemetry Engine with Perl 5.42 (AnyEvent, SQLite WAL)
https://www.reddit.com/r/perl/comments/1qwzhc6/building_a_solana_telemetr=
y_engine_with_perl_542/
=20
=20
--------------

=20
Fastmail Donates USD 10,000 to The Perl and Raku Foundation
https://www.perl.com/article/fastmail-donates-usd-10-000-to-the-perl-and-=
raku-foundation/
=20
=20
--------------

=20
Cast-Iron Community: Your Chance to Sponsor TPRC 2026
https://www.perl.com/article/cast-iron-community-your-chance-to-sponsor-t=
prc-2026/
=20
'Perl is my cast-iron pan - reliable, versatile, durable, and continues t=
o
be ever so useful.'
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Discussion

=20
Beginner struggling with quotes
https://www.reddit.com/r/perl/comments/1qwkx82/beginner_struggling_with_q=
uotes/
=20
=20
--------------

=20
A day in the life with Perl
https://www.reddit.com/r/perl/comments/1qv88wv/a_day_in_the_life_with_per=
l/
=20
It is more like a questionnaire, but you can discuss the answers.
--------------

=20
Auto format detection with perfidy anyone?
https://www.reddit.com/r/perl/comments/1qzq3am/auto_format_detection_with=
_perfidy_anyone/
=20
Would you like to have a tool that would look at your code-base and
generate a perltidy configuration file that matches it?
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

CPAN

=20
OSDC Perl 2026.01 report
https://szabgab.com/osdc-perl-2026-01
=20
Starting from December I organize online events where we contribute to op=
en
source projects. This report is about the Perl-related contributions in
January. BTW the next event is tomorrow. Sign up here (
https://luma.com/perl-maven )
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Grants

=20
Maintaining Perl 5 Core (Dave Mitchell): January 2026
https://news.perlfoundation.org/post/maintaining_perl_dave_mitchell_janua=
ry_2026
=20
'During January, I finished working on another tranche of ExtUtils::Parse=
XS
fixups.'
--------------

=20
Maintaining Perl (Tony Cook) January 2026
https://news.perlfoundation.org/post/maintaining_perl_tonyc_january_2026
=20
=20
--------------

=20
PEVANS Core Perl 5: Grant Report for January 2026
https://news.perlfoundation.org/post/pevans_core_dev_january_2026
=20
This month I managed to finish off a few refalias-related issues, as well
as lend some time to help BooK further progress implementing PPC0014.
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Perl

=20
This week in PSC (214) | 2026-02-02
https://blogs.perl.org/users/psc/2026/02/this-week-in-psc-213-2026-02-02.=
html
=20
=20
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

The Weekly Challenge
The Weekly Challenge ( https://theweeklychallenge.org ) by Mohammad Sajid
Anwar ( https://manwar.org ) 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.
=20
The Weekly Challenge - 360
https://theweeklychallenge.org/blog/perl-weekly-challenge-360
=20
Welcome to a new week with a couple of fun tasks "Text Justifier" and "Wo=
rd
Sorter". 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 (
https://theweeklychallenge.org/faq ).
--------------

=20
RECAP - The Weekly Challenge - 359
https://theweeklychallenge.org/blog/recap-challenge-359
=20
Enjoy a quick recap of last week's contributions by Team PWC dealing with
the "Digital Root" and "String Reduction" tasks in Perl and Raku. You
will find plenty of solutions to keep you busy.
--------------

=20
TWC359
https://deadmarshal.blogspot.com/2026/02/twc359.html
=20
Using the power of Perl's capabilities, the provided solution provides an
elegant solution to each of the two TWC359 challenges. Task 1 makes
efficient use of a concise while loop to compute digital roots and
persistence in less median time than most standard solutions would yield.
In Task 2, you can see how the use of Perl's global regex substitution
provides a very simple way to remove duplicate entries in adjacent
positions with just one line of code. From a code implementation point of
view, this solution exemplifies what a professional Perl implementation
of both tasks would look like.
--------------

=20
Root Reduction
https://raku-musings.com/root-reduction.html
=20
This article provides two elegant solutions for the Raku programming
language, which illustrate both Raku's clean syntax as well as the
practical application of Raku's features. The digital root implementation
uses method chaining features of Raku's expressive method chaining. The
string reduction solution demonstrates how to use the regular expression
and substitution features of Raku efficiently. There are verbose modes
for both of these solutions that allow for an easy-to-follow, step-wise
transformation of the result.
--------------

=20
Perl Weekly Challenge: Week 359
https://www.braincells.com/perl/2026/02/perl_weekly_challenge_week_359.ht=
ml
=20
The answer presented here provides two great results for the TWC359
problems; both are simple and elegant solutions. The calculation for the
digital root solution is driven through the length of the $root (using
while length($root) > 1); it is a clever way to leverage counting of the
number of persistence and summing all the digits to reduce their overall
size into a single digit (the digital root). The string reduction
solution is noteworthy due to the way that it has been written in a
single line in Perl and uses regex to efficiently match and remove
patterns.
--------------

=20
Reduced Roots
https://github.sommrey.de/the-bears-den/2026/02/06/ch-359.html
=20
Task 1, Digital Root, uses a Perl implementation with the
Math::Prime::Util's todigits and vecsum to effectively calculate roots of
various number bases with great efficiency, along with an alternative J
solution using the "Fold Single" conjunction for passing through each
digit to compute its persistence. Task 2, String Reduction, solutions
illustrate a similar range of concise processing with one-line Perl
implementations. The J solution had a completely different approach using
generalized run-length encoding to implement an algorithm that would work
on any type of input.
--------------

=20
quick and dirty!
https://fluca1978.github.io/2026/02/06/PerlWeeklyChallenge359.html
=20
A robust method has been found for addressing both TWC359 issues and
demonstrates a high degree of clean and streamlined implementations
across several languages. The explanation of how to calculate the digital
root includes two approaches: the first uses the Raku code
$root.Str.comb.map (*.Int) and the Perl code split //, $root, to break
the digits apart; and the second uses a simple while loop to determine
the number of times that digit root has been calculated. The
implementation for string reduction demonstrates how well regular
expressions can be utilized using the compact pattern s:g/ (.) $0 // in
Raku and the approximately identical implementation in Perl, thus
removing all adjacent duplicate characters in just one pass.
--------------

=20
Perl Weekly Challenge 359
https://wlmb.github.io/2026/02/02/PWC359/
=20
This article provides ready-to-use versions of the Digital Root and Strin=
g
Reduction programs written in Perl, including a concise example showing
what the results should look like. It uses clear, idiomatic programming
style while giving short, simple explanations that will help anyone to
understand how to implement an additive persistence and regex based
string reduction algorithm.
--------------

=20
Loops Considered
https://github.com/MatthiasMuth/perlweeklychallenge-club/tree/muthm-359/c=
hallenge-359/matthias-muth#readme
=20
This clean and clever solution combines methods for both problems into on=
e
very helpful implementation. In the first case, digit summation and
computing the persistent product were both implemented as a clear,
fully-documented do...while construct. In the second case, there is an
efficient method of removing all the nested duplicates with a do...while
loop while providing an excellent explanation of loop semantics and Perl
idioms. The detailed comments for each loop's semantics and the use of
Perl idioms give a worthwhile educational opportunity.
--------------

=20
Root It All You Reduce
https://packy.dardan.com/b/ia
=20
The post examines TWC359 comprehensively and insightfully via 4 programmi=
ng
languages (Recursive & Iterative Solutions). They show their vast
knowledge of specific Languages through examples such as; Elixir using
Integer.digits(), Raku displaying its fully typed nature, Perl's
idiomatic approach with sum-split//, and generator expressions found in
Python. The string reduction implementations use regular expressions
extensively to reduce complexity and improve performance; especially with
regards to the subtle differences between how each implement
backreferences and substitutions.
--------------

=20
Persistent reduction
http://ccgi.campbellsmiths.force9.co.uk/challenge/359
=20
This approach is a good example of intentional design and practical
implementation. The approach to handling very large integer strings uses
the digital root function; the string reduction uses a simple loop. Peter
also considers edge cases, such as case insensitivity and non-Latin
alphabets, which will improve the overall usability and applicability in
the real world.
--------------

=20
The Weekly Challenge #359
https://hatley-software.blogspot.com/2026/02/robbie-hatleys-solutions-in-=
perl-for.html
=20
These two tasks were solved cleanly by providing clear context for each
task with examples demonstrating how the tasks could be solved using
idiomatic features of Perl 5.36. The logic used for both tasks can be
easily read, and uses the core modules in a logical manner. Each task
contains=C2=A0inline comments that describe what is being done and make i=
t
easy to follow. The backtracking method of solving the string reduction
task using split is a particularly clever and efficient way of achieving
a solution to the task.
--------------

=20
Roots and Digits
https://blog.firedrake.org/archive/2026/02/The_Weekly_Challenge_359__Root=
s_and_Digits.html
=20
This blog post clearly presents The Weekly Challenge #359 - Roots and
Digits (Digital root task). It is a very clean write-up making use of
Raku code and does not use extraneous conversion methods. The attention
to algorithm and cross-language consistency creates a very good resource
for other participants in the challenge and is an excellent technical
overview.
--------------

=20
Digital reduction
https://dev.to/simongreennet/weekly-challenge-digital-reduction-1aci
=20
Both parts of The Weekly Challenge #359 are clearly explained, with
detailed explanations of the logic behind the solutions and concrete
examples to help you understand how each solution works, in either Python
or Perl. By providing a solution in both Python and Perl, Simon is able
to reach a broader audience by explaining how the digital root and string
reduction algorithms work.
--------------

=20
I Contain Multitudes
https://blog.ysth.info/i-contain-multitudes-returning-multiple-values-in-=
go-python-and-perl/
=20
In this article, you can find an excellent and easily read comparison of
how each of Go, Python and Perl treats returning multiple values from a
function, with good examples for each and some commentary on why certain
designs are idiomatically preferred in each language, as well as why to
use a structured return (structure, tuple, etc.) instead of returning the
multiple values returned naked. Overall, this article is a very
technically sound and informative read for anyone interested in designing
a function across different languages.
--------------

=20
Return to Sender
https://blog.ysth.info/return-to-sender-rejecting-letters-three-different=
-ways-weekly-challenge-359-part-2/
=20
This article compares three elegant methods for the string reduction
problem. The methods are presented in three different programming
languages: Perl (using regular expressions), Python (using recursive
regular expressions), and Go (using a stack-based algorithm). Each method
has been chosen to demonstrate the strengths of the respective
programming language.
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Weekly collections

=20
NICEPERL's lists
http://niceperl.blogspot.com/
=20
Great CPAN modules released last week (
https://niceperl.blogspot.com/2026/02/dlxxxvi-10-great-cpan-modules-relea
sed.html );
MetaCPAN weekly report (
https://niceperl.blogspot.com/2026/02/dcxxiv-metacpan-weekly-report-xsjit
.html ).
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Chat about Perl

=20
WhatsApp
https://chat.whatsapp.com/LRrkZsSRDvGLLwppyLnKHy
=20
Join the Perl Maven chat group on WhatsApp!
--------------

=20
Telegram
https://t.me/PerlMaven
=20
Join the Perl Maven chat group on Telegram!
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Events

=20
Perl Maven online: Code-reading and Open Source contribution
https://luma.com/perl-maven
=20
February 10, 2025
--------------

=20
Boston.pm - online
https://mobilizon.us/search?search=3DBoston+Perl
=20
February 10, 2025
--------------

=20
Paris.pm monthly meeting
https://paris.mongueurs.net/
=20
February 11, 2025
--------------

=20
Paris.pm monthly meeting
https://paris.mongueurs.net/
=20
March 11, 2025
--------------

=20
German Perl/Raku Workshop 2026 in Berlin
https://act.yapc.eu/gpw2026/
=20
March 16-18, 2025
--------------

=20
The Perl and Raku Conference 2026
https://tprc.us/tprc-2026-gsp/
=20
June 26-29, 2026, Greenville, SC, USA
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D




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 ( https://perlweekly.com/archive/ ) of a=
ll the issues.

Reading this as a non-subscriber? Join us free of charge. https://perlweekl=
y.com/

(C) Copyright Gabor Szabo https://szabgab.com/
The articles are copyright the respective authors.

You can freely redistribute this message if
you keep the whole message intact, including
the Copyright notice and this text.

If you don't want to receive mails any more
you can unsubscribe here: https://perlweekly.com/unsubscribe.html


--93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset=utf-8
Mime-Version: 1.0





1.0, user-scalable=3Dyes">
Perl Weekly Issue #759 - 2026-02-09 - Perl on LinkedIn





color=3D"#ffffff">






=20

=20

=20

=20

=20

=20

=20

=20
=20


=20

=20

=20

=20
=20


=20

=20
=20


=20

=20

=20

=20
=20


=20

=20
=20


=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20
=20


=20

=20
=20


=20

=20


background-color: #004065;
color: #FFF;
text-decoration: none;
font-size: 40px;
font-weight: bold;
font-family: Gadget;
=20
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border: 1px solid #000;
padding: 10px;
">Perl Weekly

=20


style=3D"border-bottom: 1px solid #ccc;
padding-bottom: 8px;
font-size: 18px;">
Issue #759 - 2026-02-09 - Perl on LinkedIn



latest | https://perlweekly.com/archive">archive | edited by szabgab.com/">Gabor Szabo

=20

This edition was made possible by the n.com/szabgab">supporters of our cause.

=20


You can read the ne=
wsletter on the web
, if you prefer.

=20





=20


Hi there!


=20


6 years ago we had an edition in which I wrote a bit about =3D"https://perlweekly.com/archive/457.html">Perl on LinkedIn. Back the=
n I collected some basic stats about the Perl groups on LinkedIn. I checked=
them again: The Perl Mo=
ngers
group has 7,635 members (down from 8,283). The /www.linkedin.com/groups/3686926/">Perl Developer group has 3,587 membe=
rs (up from 3,122). There is also a group called kedin.com/groups/106254/">Perl with 18,994 that I apparently forgot to =
mention the last time.


=20


Besides those groups there is also the din.com/showcase/perl-maven/">Perl Maven page I maintain with 845 follo=
wers and my own personal p=
age
with 5,998 followers.


=20


Even if you don't use LinkedIn on a daily basis I'd like to invite =
you to send a connect requ=
est to me
. That way I'll have a better chance knowing who are the reade=
rs of the Perl Weekly.


=20


Also a reminder that tomorrow we'll have another session of the href=3D"https://luma.com/perl-maven">Online Perl code-reading an open sourc=
e contribution
and not long after that there will be meeting of the href=3D"https://mobilizon.us/search?search=3DBoston+Perl">Boston Perl Monge=
rs


=20


Enjoy your week!


=20


Your editor: Gabor Szabo.



mg/gabor_szabo.png" />




Articles

=20


=20
>


socket/" style=3D"
font-size: 18px;
font-weight: bold;
">Mojo with WebSocket


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Known for its real=E2=80=91time web capabilities, Mojo see=
med like the perfect framework to experiment with WebSockets. What better w=
ay to test it than building a live chat room?


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


s-2o4" style=3D"
font-size: 18px;
font-weight: bold;
">Beautiful Perl feature: BLOCKs


=20
by ogspot.com/">Laurent Dami (etacpan.org/author/DAMI">DAMI)
<=
p style=3D"font-size: 16px">
BLOCK : sequence of statements; Lexical scope; Lexical sc=
opes in Python are not like Perl; Lexical variables; Shadowing variables fr=
om higher scopes; Lexical pragmata


=20

m/img/laurent_dami.png" title=3D"Laurent Dami" width=3D"80" />
=20


=20
>


oduction-to-the-series-b6a" style=3D"
font-size: 18px;
font-weight: bold;
">Beautiful Perl features - introduction to the series>

=20
by
ogspot.com/">Laurent Dami (etacpan.org/author/DAMI">DAMI) <=
p style=3D"font-size: 16px">
Expressiveness of the Perl programming language. Perl vs o=
ther languages : Compare facts, not opinions.


=20

m/img/laurent_dami.png" title=3D"Laurent Dami" width=3D"80" />
=20


=20
>


async-htmx/" style=3D"
font-size: 18px;
font-weight: bold;
">Dancer2 + Dancer2::Plugin::DBIC::Async + HTMX


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


=20


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


ilding_a_solana_telemetry_engine_with_perl_542/" style=3D"
font-size: 18px;
font-weight: bold;
">Building a Solana Telemetry Engine with Perl 5.42 (AnyE=
vent, SQLite WAL)



=20


=20

=20
=20


=20
>


-10-000-to-the-perl-and-raku-foundation/" style=3D"
font-size: 18px;
font-weight: bold;
">Fastmail Donates USD 10,000 to The Perl and Raku Founda=
tion


=20
by rl.org/users/olaf_alders/">Olaf Alders (=3D"https://metacpan.org/author/OALDERS">OALDERS) an>


=20


=20

m/img/olaf_alders.png" title=3D"Olaf Alders" width=3D"80" />
=20


=20
>


your-chance-to-sponsor-tprc-2026/" style=3D"
font-size: 18px;
font-weight: bold;
">Cast-Iron Community: Your Chance to Sponsor TPRC 2026a>

=20
by
rl.org/users/olaf_alders/">Olaf Alders (=3D"https://metacpan.org/author/OALDERS">OALDERS) an>


'Perl is my cast-iron pan - reliable, versatile, durable, =
and continues to be ever so useful.'


=20

m/img/olaf_alders.png" title=3D"Olaf Alders" width=3D"80" />
=20



Discussion

=20


=20
>


ginner_struggling_with_quotes/" style=3D"
font-size: 18px;
font-weight: bold;
">Beginner struggling with quotes



=20


=20

=20
=20


=20
>


day_in_the_life_with_perl/" style=3D"
font-size: 18px;
font-weight: bold;
">A day in the life with Perl



It is more like a questionnaire, but you can discuss the a=
nswers.


=20

=20
=20


=20
>


to_format_detection_with_perfidy_anyone/" style=3D"
font-size: 18px;
font-weight: bold;
">Auto format detection with perfidy anyone?



Would you like to have a tool that would look at your code=
-base and generate a perltidy configuration file that matches it?


=20

=20
=20



CPAN

=20


=20
>


font-size: 18px;
font-weight: bold;
">OSDC Perl 2026.01 report


=20
by com/">Gabor Szabo (org/author/SZABGAB">SZABGAB)

style=3D"font-size: 16px">
Starting from December I organize online events where we c=
ontribute to open source projects. This report is about the Perl-related co=
ntributions in January. BTW the next event is tomorrow. Sign up https://luma.com/perl-maven">here


=20

m/img/gabor_szabo.png" title=3D"Gabor Szabo" width=3D"80" />
=20



Grants

=20


=20
>


perl_dave_mitchell_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">Maintaining Perl 5 Core (Dave Mitchell): January 2026a>

=20
by Dave Mitchell
=


'During January, I finished working on another tranche of =
ExtUtils::ParseXS fixups.'


=20

=20
=20


=20
>


perl_tonyc_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">Maintaining Perl (Tony Cook) January 2026


=20
by Tony Cook (/metacpan.org/author/TONYC">TONYC)
=


=20


=20

=20
=20


=20
>


dev_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">PEVANS Core Perl 5: Grant Report for January 2026


=20
by code.blogspot.com/">Paul Evans (s://metacpan.org/author/PEVANS">PEVANS)
=


This month I managed to finish off a few refalias-related =
issues, as well as lend some time to help BooK further progress implementin=
g PPC0014.


=20

m/img/paul_evans.png" title=3D"Paul Evans" width=3D"80" />
=20



Perl

=20


=20
>


k-in-psc-213-2026-02-02.html" style=3D"
font-size: 18px;
font-weight: bold;
">This week in PSC (214) | 2026-02-02



=20


=20

=20
=20



The Weekly Chall=
enge

=20

nge.org">The Weekly Challenge by Mohamma=
d 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 o=
ne champion at the end of the month from among all of the contributors duri=
ng the month, thanks to the sponsor Lance Wicks.


=20


=20
>


hallenge-360" style=3D"
font-size: 18px;
font-weight: bold;
">The Weekly Challenge - 360


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Welcome to a new week with a couple of fun tasks "Text Jus=
tifier" and "Word Sorter". 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.


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


ge-359" style=3D"
font-size: 18px;
font-weight: bold;
">RECAP - The Weekly Challenge - 359


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Enjoy a quick recap of last week's contributions by Team P=
WC dealing with the "Digital Root" and "String Reduction" tasks in Perl and=
Raku. You will find plenty of solutions to keep you busy.


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


tml" style=3D"
font-size: 18px;
font-weight: bold;
">TWC359


=20
by Ali Moradi

style=3D"font-size: 16px">
Using the power of Perl's capabilities, the provided solut=
ion provides an elegant solution to each of the two TWC359 challenges. Task=
1 makes efficient use of a concise while loop to compute digital roots and=
persistence in less median time than most standard solutions would yield. =
In Task 2, you can see how the use of Perl's global regex substitution prov=
ides a very simple way to remove duplicate entries in adjacent positions wi=
th just one line of code. From a code implementation point of view, this so=
lution exemplifies what a professional Perl implementation of both tasks wo=
uld look like.


=20

=20
=20


=20
>


le=3D"
font-size: 18px;
font-weight: bold;
">Root Reduction


=20
by ings.com/">Arne Sommer

=3D"font-size: 16px">
This article provides two elegant solutions for the Raku p=
rogramming language, which illustrate both Raku's clean syntax as well as t=
he practical application of Raku's features. The digital root implementatio=
n uses method chaining features of Raku's expressive method chaining. The s=
tring reduction solution demonstrates how to use the regular expression and=
substitution features of Raku efficiently. There are verbose modes for bot=
h of these solutions that allow for an easy-to-follow, step-wise transforma=
tion of the result.


=20

m/img/arne-sommer.jpeg" title=3D"Arne Sommer" width=3D"80" />
=20


=20
>


ly_challenge_week_359.html" style=3D"
font-size: 18px;
font-weight: bold;
">Perl Weekly Challenge: Week 359


=20
by Jaldhar H. Vyas
=


The answer presented here provides two great results for t=
he TWC359 problems; both are simple and elegant solutions. The calculation =
for the digital root solution is driven through the length of the $root (us=
ing while length($root) > 1); it is a clever way to leverage counting of th=
e number of persistence and summing all the digits to reduce their overall =
size into a single digit (the digital root). The string reduction solution =
is noteworthy due to the way that it has been written in a single line in P=
erl and uses regex to efficiently match and remove patterns.


=20

=20
=20


=20
>


6/ch-359.html" style=3D"
font-size: 18px;
font-weight: bold;
">Reduced Roots


=20
by ommrey.de/">Jorg Sommrey

e=3D"font-size: 16px">
Task 1, Digital Root, uses a Perl implementation with the =
Math::Prime::Util's todigits and vecsum to effectively calculate roots of v=
arious number bases with great efficiency, along with an alternative J solu=
tion using the "Fold Single" conjunction for passing through each digit to =
compute its persistence. Task 2, String Reduction, solutions illustrate a s=
imilar range of concise processing with one-line Perl implementations. The =
J solution had a completely different approach using generalized run-length=
encoding to implement an algorithm that would work on any type of input.


=20

=20
=20


=20
>


Challenge359.html" style=3D"
font-size: 18px;
font-weight: bold;
">quick and dirty!


=20
by .blogspot.com">Luca Ferrari

tyle=3D"font-size: 16px">
A robust method has been found for addressing both TWC359 =
issues and demonstrates a high degree of clean and streamlined implementati=
ons across several languages. The explanation of how to calculate the digit=
al root includes two approaches: the first uses the Raku code $root.Str.com=
b.map (*.Int) and the Perl code split //, $root, to break the digits apart;=
and the second uses a simple while loop to determine the number of times t=
hat digit root has been calculated. The implementation for string reduction=
demonstrates how well regular expressions can be utilized using the compac=
t pattern s:g/ (.) $0 // in Raku and the approximately identical implementa=
tion in Perl, thus removing all adjacent duplicate characters in just one p=
ass.


=20

=20
=20


=20
>


=3D"
font-size: 18px;
font-weight: bold;
">Perl Weekly Challenge 359


=20
by hub.io/">W Luis Mochan

=3D"font-size: 16px">
This article provides ready-to-use versions of the Digital=
Root and String Reduction programs written in Perl, including a concise ex=
ample showing what the results should look like. It uses clear, idiomatic p=
rogramming style while giving short, simple explanations that will help any=
one to understand how to implement an additive persistence and regex based =
string reduction algorithm.


=20

m/img/luis-mochan.jpeg" title=3D"W Luis Mochan" width=3D"80" />
=20


=20
>


ge-club/tree/muthm-359/challenge-359/matthias-muth#readme" style=3D"
font-size: 18px;
font-weight: bold;
">Loops Considered


=20
by Matthias Muth
=


This clean and clever solution combines methods for both p=
roblems into one very helpful implementation. In the first case, digit summ=
ation and computing the persistent product were both implemented as a clear=
, fully-documented do...while construct. In the second case, there is an ef=
ficient method of removing all the nested duplicates with a do...while loop=
while providing an excellent explanation of loop semantics and Perl idioms=
. The detailed comments for each loop's semantics and the use of Perl idiom=
s give a worthwhile educational opportunity.


=20

=20
=20


=20
>


font-size: 18px;
font-weight: bold;
">Root It All You Reduce


=20
by rl.org/users/packy_anderson/">Packy Anderson (<=
a href=3D"https://metacpan.org/author/PACKY">PACKY) span>


The post examines TWC359 comprehensively and insightfully =
via 4 programming languages (Recursive & Iterative Solutions). They show th=
eir vast knowledge of specific Languages through examples such as; Elixir u=
sing Integer.digits(), Raku displaying its fully typed nature, Perl's idiom=
atic approach with sum-split//, and generator expressions found in Python. =
The string reduction implementations use regular expressions extensively to=
reduce complexity and improve performance; especially with regards to the =
subtle differences between how each implement backreferences and substituti=
ons.


=20

m/img/packy-anderson.jpeg" title=3D"Packy Anderson" width=3D"80" />
=20


=20
>


/359" style=3D"
font-size: 18px;
font-weight: bold;
">Persistent reduction


=20
by bellsmiths.force9.co.uk/">Peter Campbell Smith
=


This approach is a good example of intentional design and =
practical implementation. The approach to handling very large integer strin=
gs uses the digital root function; the string reduction uses a simple loop.=
Peter also considers edge cases, such as case insensitivity and non-Latin =
alphabets, which will improve the overall usability and applicability in th=
e real world.


=20

m/img/peter-campbell-smith.png" title=3D"Peter Campbell Smith" width=3D"80"=
/>
=20


=20
>


ie-hatleys-solutions-in-perl-for.html" style=3D"
font-size: 18px;
font-weight: bold;
">The Weekly Challenge #359


=20
by oftware.blogspot.com/">Robbie Hatley
=


These two tasks were solved cleanly by providing clear con=
text for each task with examples demonstrating how the tasks could be solve=
d using=C2=A0idiomatic features of Perl 5.36. The logic used for both tasks=
can be easily read, and uses the core modules in a logical manner. Each ta=
sk contains=C2=A0inline comments that describe what is being done and make =
it easy to follow. The backtracking method of solving the string reduction =
task using split is a particularly clever and efficient way of achieving a =
solution to the task.


=20

=20
=20


=20
>


ekly_Challenge_359__Roots_and_Digits.html" style=3D"
font-size: 18px;
font-weight: bold;
">Roots and Digits


=20
by edrake.org/">Roger Bell West (//metacpan.org/author/FIREDRAKE">FIREDRAKE)
=


This blog post clearly presents The Weekly Challenge #359 =
- Roots and Digits (Digital root task). It is a very clean write-up making =
use of Raku code and does not use extraneous conversion methods. The attent=
ion to algorithm and cross-language consistency creates a very good resourc=
e for other participants in the challenge and is an excellent technical ove=
rview.


=20

=20
=20


=20
>


ital-reduction-1aci" style=3D"
font-size: 18px;
font-weight: bold;
">Digital reduction


=20
by imongreennet">Simon Green (etacpan.org/author/SGREEN">SGREEN)
=


Both parts of The Weekly Challenge #359 are clearly explai=
ned, with detailed explanations of the logic behind the solutions and concr=
ete examples to help you understand how each solution works, in either Pyth=
on or Perl. By providing a solution in both Python and Perl, Simon is able =
to reach a broader audience by explaining how the digital root and string r=
eduction algorithms work.


=20

m/img/simon-green.png" title=3D"Simon Green" width=3D"80" />
=20


=20
>


ning-multiple-values-in-go-python-and-perl/" style=3D"
font-size: 18px;
font-weight: bold;
">I Contain Multitudes


=20
by Yitzchak Scott-Thoennes
=


In this article, you can find an excellent and easily read=
comparison of how each of Go, Python and Perl treats returning multiple va=
lues from a function, with good examples for each and some commentary on wh=
y certain designs are idiomatically preferred in each language, as well as =
why to use a structured return (structure, tuple, etc.) instead of returnin=
g the multiple values returned naked. Overall, this article is a very techn=
ically sound and informative read for anyone interested in designing a func=
tion across different languages.


=20

=20
=20


=20
>


-letters-three-different-ways-weekly-challenge-359-part-2/" style=3D"
font-size: 18px;
font-weight: bold;
">Return to Sender


=20
by Yitzchak Scott-Thoennes
=


This article compares three elegant methods for the string=
reduction problem. The methods are presented in three different programmin=
g languages: Perl (using regular expressions), Python (using recursive regu=
lar expressions), and Go (using a stack-based algorithm). Each method has b=
een chosen to demonstrate the strengths of the respective programming langu=
age.


=20

=20
=20



Weekly collectio=
ns

=20


=20
>


font-size: 18px;
font-weight: bold;
">NICEPERL's lists


=20
by blogspot.com/">Miguel Prz (etacpan.org/author/NICEPERL">NICEPERL)
=


0-great-cpan-modules-released.html">Great CPAN modules released last weeka>;
kly-report-xsjit.html">MetaCPAN weekly report.


=20

=20
=20



Chat about Perl<=
/div>
=20


=20
>


style=3D"
font-size: 18px;
font-weight: bold;
">WhatsApp



Join the Perl Maven chat group on WhatsApp!


=20

=20
=20


=20
>


font-size: 18px;
font-weight: bold;
">Telegram



Join the Perl Maven chat group on Telegram!


=20

=2--===============0493153006==
Content-Type: multipart/alternative; boundary=93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6

--93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0

Perl Weekly=20

https://perlweekly.com/

You can read the newsletter on the web, if you prefer.
https://perlweekly.com/archive/759.html



Hi there!

6 years ago we had an edition in which I wrote a bit about Perl on LinkedIn
( https://perlweekly.com/archive/457.html ). Back then I collected some
basic stats about the Perl groups on LinkedIn. I checked them again: The
Perl Mongers ( https://www.linkedin.com/groups/40830/ ) group has 7,635
members (down from 8,283). The Perl Developer (
https://www.linkedin.com/groups/3686926/ ) group has 3,587 members (up from
3,122). There is also a group called Perl (
https://www.linkedin.com/groups/106254/ ) with 18,994 that I apparently
forgot to mention the last time.

Besides those groups there is also the Perl Maven (
https://www.linkedin.com/showcase/perl-maven/ ) page I maintain with 845
followers and my own personal page ( https://www.linkedin.com/in/szabgab/ )
with 5,998 followers.

Even if you don't use LinkedIn on a daily basis I'd like to invite you to
send a connect request to me ( https://www.linkedin.com/in/szabgab/ ). That
way I'll have a better chance knowing who are the readers of the Perl
Weekly.

Also a reminder that tomorrow we'll have another session of the Online Perl
code-reading an open source contribution ( https://luma.com/perl-maven )
and not long after that there will be meeting of the Boston Perl Mongers (
https://mobilizon.us/search?search=3DBoston+Perl )

Enjoy your week!

--
Your editor: Gabor Szabo.


Articles

=20
Mojo with WebSocket
https://theweeklychallenge.org/blog/mojo-with-websocket/
=20
Known for its real=E2=80=91time web capabilities, Mojo seemed like the pe=
rfect
framework to experiment with WebSockets. What better way to test it than
building a live chat room?
--------------

=20
Beautiful Perl feature: BLOCKs
https://dev.to/damil/beautiful-perl-feature-blocks-2o4
=20
BLOCK : sequence of statements; Lexical scope; Lexical scopes in Python
are not like Perl; Lexical variables; Shadowing variables from higher
scopes; Lexical pragmata
--------------

=20
Beautiful Perl features - introduction to the series
https://dev.to/damil/beautiful-perl-features-introduction-to-the-series-b=
6a
=20
Expressiveness of the Perl programming language. Perl vs other languages =
:
Compare facts, not opinions.
--------------

=20
Dancer2 + Dancer2::Plugin::DBIC::Async + HTMX
https://theweeklychallenge.org/blog/dancer2-dbic-async-htmx/
=20
=20
--------------

=20
Building a Solana Telemetry Engine with Perl 5.42 (AnyEvent, SQLite WAL)
https://www.reddit.com/r/perl/comments/1qwzhc6/building_a_solana_telemetr=
y_engine_with_perl_542/
=20
=20
--------------

=20
Fastmail Donates USD 10,000 to The Perl and Raku Foundation
https://www.perl.com/article/fastmail-donates-usd-10-000-to-the-perl-and-=
raku-foundation/
=20
=20
--------------

=20
Cast-Iron Community: Your Chance to Sponsor TPRC 2026
https://www.perl.com/article/cast-iron-community-your-chance-to-sponsor-t=
prc-2026/
=20
'Perl is my cast-iron pan - reliable, versatile, durable, and continues t=
o
be ever so useful.'
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Discussion

=20
Beginner struggling with quotes
https://www.reddit.com/r/perl/comments/1qwkx82/beginner_struggling_with_q=
uotes/
=20
=20
--------------

=20
A day in the life with Perl
https://www.reddit.com/r/perl/comments/1qv88wv/a_day_in_the_life_with_per=
l/
=20
It is more like a questionnaire, but you can discuss the answers.
--------------

=20
Auto format detection with perfidy anyone?
https://www.reddit.com/r/perl/comments/1qzq3am/auto_format_detection_with=
_perfidy_anyone/
=20
Would you like to have a tool that would look at your code-base and
generate a perltidy configuration file that matches it?
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

CPAN

=20
OSDC Perl 2026.01 report
https://szabgab.com/osdc-perl-2026-01
=20
Starting from December I organize online events where we contribute to op=
en
source projects. This report is about the Perl-related contributions in
January. BTW the next event is tomorrow. Sign up here (
https://luma.com/perl-maven )
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Grants

=20
Maintaining Perl 5 Core (Dave Mitchell): January 2026
https://news.perlfoundation.org/post/maintaining_perl_dave_mitchell_janua=
ry_2026
=20
'During January, I finished working on another tranche of ExtUtils::Parse=
XS
fixups.'
--------------

=20
Maintaining Perl (Tony Cook) January 2026
https://news.perlfoundation.org/post/maintaining_perl_tonyc_january_2026
=20
=20
--------------

=20
PEVANS Core Perl 5: Grant Report for January 2026
https://news.perlfoundation.org/post/pevans_core_dev_january_2026
=20
This month I managed to finish off a few refalias-related issues, as well
as lend some time to help BooK further progress implementing PPC0014.
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Perl

=20
This week in PSC (214) | 2026-02-02
https://blogs.perl.org/users/psc/2026/02/this-week-in-psc-213-2026-02-02.=
html
=20
=20
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

The Weekly Challenge
The Weekly Challenge ( https://theweeklychallenge.org ) by Mohammad Sajid
Anwar ( https://manwar.org ) 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.
=20
The Weekly Challenge - 360
https://theweeklychallenge.org/blog/perl-weekly-challenge-360
=20
Welcome to a new week with a couple of fun tasks "Text Justifier" and "Wo=
rd
Sorter". 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 (
https://theweeklychallenge.org/faq ).
--------------

=20
RECAP - The Weekly Challenge - 359
https://theweeklychallenge.org/blog/recap-challenge-359
=20
Enjoy a quick recap of last week's contributions by Team PWC dealing with
the "Digital Root" and "String Reduction" tasks in Perl and Raku. You
will find plenty of solutions to keep you busy.
--------------

=20
TWC359
https://deadmarshal.blogspot.com/2026/02/twc359.html
=20
Using the power of Perl's capabilities, the provided solution provides an
elegant solution to each of the two TWC359 challenges. Task 1 makes
efficient use of a concise while loop to compute digital roots and
persistence in less median time than most standard solutions would yield.
In Task 2, you can see how the use of Perl's global regex substitution
provides a very simple way to remove duplicate entries in adjacent
positions with just one line of code. From a code implementation point of
view, this solution exemplifies what a professional Perl implementation
of both tasks would look like.
--------------

=20
Root Reduction
https://raku-musings.com/root-reduction.html
=20
This article provides two elegant solutions for the Raku programming
language, which illustrate both Raku's clean syntax as well as the
practical application of Raku's features. The digital root implementation
uses method chaining features of Raku's expressive method chaining. The
string reduction solution demonstrates how to use the regular expression
and substitution features of Raku efficiently. There are verbose modes
for both of these solutions that allow for an easy-to-follow, step-wise
transformation of the result.
--------------

=20
Perl Weekly Challenge: Week 359
https://www.braincells.com/perl/2026/02/perl_weekly_challenge_week_359.ht=
ml
=20
The answer presented here provides two great results for the TWC359
problems; both are simple and elegant solutions. The calculation for the
digital root solution is driven through the length of the $root (using
while length($root) > 1); it is a clever way to leverage counting of the
number of persistence and summing all the digits to reduce their overall
size into a single digit (the digital root). The string reduction
solution is noteworthy due to the way that it has been written in a
single line in Perl and uses regex to efficiently match and remove
patterns.
--------------

=20
Reduced Roots
https://github.sommrey.de/the-bears-den/2026/02/06/ch-359.html
=20
Task 1, Digital Root, uses a Perl implementation with the
Math::Prime::Util's todigits and vecsum to effectively calculate roots of
various number bases with great efficiency, along with an alternative J
solution using the "Fold Single" conjunction for passing through each
digit to compute its persistence. Task 2, String Reduction, solutions
illustrate a similar range of concise processing with one-line Perl
implementations. The J solution had a completely different approach using
generalized run-length encoding to implement an algorithm that would work
on any type of input.
--------------

=20
quick and dirty!
https://fluca1978.github.io/2026/02/06/PerlWeeklyChallenge359.html
=20
A robust method has been found for addressing both TWC359 issues and
demonstrates a high degree of clean and streamlined implementations
across several languages. The explanation of how to calculate the digital
root includes two approaches: the first uses the Raku code
$root.Str.comb.map (*.Int) and the Perl code split //, $root, to break
the digits apart; and the second uses a simple while loop to determine
the number of times that digit root has been calculated. The
implementation for string reduction demonstrates how well regular
expressions can be utilized using the compact pattern s:g/ (.) $0 // in
Raku and the approximately identical implementation in Perl, thus
removing all adjacent duplicate characters in just one pass.
--------------

=20
Perl Weekly Challenge 359
https://wlmb.github.io/2026/02/02/PWC359/
=20
This article provides ready-to-use versions of the Digital Root and Strin=
g
Reduction programs written in Perl, including a concise example showing
what the results should look like. It uses clear, idiomatic programming
style while giving short, simple explanations that will help anyone to
understand how to implement an additive persistence and regex based
string reduction algorithm.
--------------

=20
Loops Considered
https://github.com/MatthiasMuth/perlweeklychallenge-club/tree/muthm-359/c=
hallenge-359/matthias-muth#readme
=20
This clean and clever solution combines methods for both problems into on=
e
very helpful implementation. In the first case, digit summation and
computing the persistent product were both implemented as a clear,
fully-documented do...while construct. In the second case, there is an
efficient method of removing all the nested duplicates with a do...while
loop while providing an excellent explanation of loop semantics and Perl
idioms. The detailed comments for each loop's semantics and the use of
Perl idioms give a worthwhile educational opportunity.
--------------

=20
Root It All You Reduce
https://packy.dardan.com/b/ia
=20
The post examines TWC359 comprehensively and insightfully via 4 programmi=
ng
languages (Recursive & Iterative Solutions). They show their vast
knowledge of specific Languages through examples such as; Elixir using
Integer.digits(), Raku displaying its fully typed nature, Perl's
idiomatic approach with sum-split//, and generator expressions found in
Python. The string reduction implementations use regular expressions
extensively to reduce complexity and improve performance; especially with
regards to the subtle differences between how each implement
backreferences and substitutions.
--------------

=20
Persistent reduction
http://ccgi.campbellsmiths.force9.co.uk/challenge/359
=20
This approach is a good example of intentional design and practical
implementation. The approach to handling very large integer strings uses
the digital root function; the string reduction uses a simple loop. Peter
also considers edge cases, such as case insensitivity and non-Latin
alphabets, which will improve the overall usability and applicability in
the real world.
--------------

=20
The Weekly Challenge #359
https://hatley-software.blogspot.com/2026/02/robbie-hatleys-solutions-in-=
perl-for.html
=20
These two tasks were solved cleanly by providing clear context for each
task with examples demonstrating how the tasks could be solved using
idiomatic features of Perl 5.36. The logic used for both tasks can be
easily read, and uses the core modules in a logical manner. Each task
contains=C2=A0inline comments that describe what is being done and make i=
t
easy to follow. The backtracking method of solving the string reduction
task using split is a particularly clever and efficient way of achieving
a solution to the task.
--------------

=20
Roots and Digits
https://blog.firedrake.org/archive/2026/02/The_Weekly_Challenge_359__Root=
s_and_Digits.html
=20
This blog post clearly presents The Weekly Challenge #359 - Roots and
Digits (Digital root task). It is a very clean write-up making use of
Raku code and does not use extraneous conversion methods. The attention
to algorithm and cross-language consistency creates a very good resource
for other participants in the challenge and is an excellent technical
overview.
--------------

=20
Digital reduction
https://dev.to/simongreennet/weekly-challenge-digital-reduction-1aci
=20
Both parts of The Weekly Challenge #359 are clearly explained, with
detailed explanations of the logic behind the solutions and concrete
examples to help you understand how each solution works, in either Python
or Perl. By providing a solution in both Python and Perl, Simon is able
to reach a broader audience by explaining how the digital root and string
reduction algorithms work.
--------------

=20
I Contain Multitudes
https://blog.ysth.info/i-contain-multitudes-returning-multiple-values-in-=
go-python-and-perl/
=20
In this article, you can find an excellent and easily read comparison of
how each of Go, Python and Perl treats returning multiple values from a
function, with good examples for each and some commentary on why certain
designs are idiomatically preferred in each language, as well as why to
use a structured return (structure, tuple, etc.) instead of returning the
multiple values returned naked. Overall, this article is a very
technically sound and informative read for anyone interested in designing
a function across different languages.
--------------

=20
Return to Sender
https://blog.ysth.info/return-to-sender-rejecting-letters-three-different=
-ways-weekly-challenge-359-part-2/
=20
This article compares three elegant methods for the string reduction
problem. The methods are presented in three different programming
languages: Perl (using regular expressions), Python (using recursive
regular expressions), and Go (using a stack-based algorithm). Each method
has been chosen to demonstrate the strengths of the respective
programming language.
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Weekly collections

=20
NICEPERL's lists
http://niceperl.blogspot.com/
=20
Great CPAN modules released last week (
https://niceperl.blogspot.com/2026/02/dlxxxvi-10-great-cpan-modules-relea
sed.html );
MetaCPAN weekly report (
https://niceperl.blogspot.com/2026/02/dcxxiv-metacpan-weekly-report-xsjit
.html ).
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Chat about Perl

=20
WhatsApp
https://chat.whatsapp.com/LRrkZsSRDvGLLwppyLnKHy
=20
Join the Perl Maven chat group on WhatsApp!
--------------

=20
Telegram
https://t.me/PerlMaven
=20
Join the Perl Maven chat group on Telegram!
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Events

=20
Perl Maven online: Code-reading and Open Source contribution
https://luma.com/perl-maven
=20
February 10, 2025
--------------

=20
Boston.pm - online
https://mobilizon.us/search?search=3DBoston+Perl
=20
February 10, 2025
--------------

=20
Paris.pm monthly meeting
https://paris.mongueurs.net/
=20
February 11, 2025
--------------

=20
Paris.pm monthly meeting
https://paris.mongueurs.net/
=20
March 11, 2025
--------------

=20
German Perl/Raku Workshop 2026 in Berlin
https://act.yapc.eu/gpw2026/
=20
March 16-18, 2025
--------------

=20
The Perl and Raku Conference 2026
https://tprc.us/tprc-2026-gsp/
=20
June 26-29, 2026, Greenville, SC, USA
--------------

=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D




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 ( https://perlweekly.com/archive/ ) of a=
ll the issues.

Reading this as a non-subscriber? Join us free of charge. https://perlweekl=
y.com/

(C) Copyright Gabor Szabo https://szabgab.com/
The articles are copyright the respective authors.

You can freely redistribute this message if
you keep the whole message intact, including
the Copyright notice and this text.

If you don't want to receive mails any more
you can unsubscribe here: https://perlweekly.com/unsubscribe.html


--93c9e0fcd711413649be1a40ab3b9cc92bb3629791125f405c5e79ea1ac6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset=utf-8
Mime-Version: 1.0





1.0, user-scalable=3Dyes">
Perl Weekly Issue #759 - 2026-02-09 - Perl on LinkedIn





color=3D"#ffffff">






=20

=20

=20

=20

=20

=20

=20

=20
=20


=20

=20

=20

=20
=20


=20

=20
=20


=20

=20

=20

=20
=20


=20

=20
=20


=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20

=20
=20


=20

=20
=20


=20

=20


background-color: #004065;
color: #FFF;
text-decoration: none;
font-size: 40px;
font-weight: bold;
font-family: Gadget;
=20
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border: 1px solid #000;
padding: 10px;
">Perl Weekly

=20


style=3D"border-bottom: 1px solid #ccc;
padding-bottom: 8px;
font-size: 18px;">
Issue #759 - 2026-02-09 - Perl on LinkedIn



latest | https://perlweekly.com/archive">archive | edited by szabgab.com/">Gabor Szabo

=20

This edition was made possible by the n.com/szabgab">supporters of our cause.

=20


You can read the ne=
wsletter on the web
, if you prefer.

=20





=20


Hi there!


=20


6 years ago we had an edition in which I wrote a bit about =3D"https://perlweekly.com/archive/457.html">Perl on LinkedIn. Back the=
n I collected some basic stats about the Perl groups on LinkedIn. I checked=
them again: The Perl Mo=
ngers
group has 7,635 members (down from 8,283). The /www.linkedin.com/groups/3686926/">Perl Developer group has 3,587 membe=
rs (up from 3,122). There is also a group called kedin.com/groups/106254/">Perl with 18,994 that I apparently forgot to =
mention the last time.


=20


Besides those groups there is also the din.com/showcase/perl-maven/">Perl Maven page I maintain with 845 follo=
wers and my own personal p=
age
with 5,998 followers.


=20


Even if you don't use LinkedIn on a daily basis I'd like to invite =
you to send a connect requ=
est to me
. That way I'll have a better chance knowing who are the reade=
rs of the Perl Weekly.


=20


Also a reminder that tomorrow we'll have another session of the href=3D"https://luma.com/perl-maven">Online Perl code-reading an open sourc=
e contribution
and not long after that there will be meeting of the href=3D"https://mobilizon.us/search?search=3DBoston+Perl">Boston Perl Monge=
rs


=20


Enjoy your week!


=20


Your editor: Gabor Szabo.



mg/gabor_szabo.png" />




Articles

=20


=20
>


socket/" style=3D"
font-size: 18px;
font-weight: bold;
">Mojo with WebSocket


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Known for its real=E2=80=91time web capabilities, Mojo see=
med like the perfect framework to experiment with WebSockets. What better w=
ay to test it than building a live chat room?


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


s-2o4" style=3D"
font-size: 18px;
font-weight: bold;
">Beautiful Perl feature: BLOCKs


=20
by ogspot.com/">Laurent Dami (etacpan.org/author/DAMI">DAMI)
<=
p style=3D"font-size: 16px">
BLOCK : sequence of statements; Lexical scope; Lexical sc=
opes in Python are not like Perl; Lexical variables; Shadowing variables fr=
om higher scopes; Lexical pragmata


=20

m/img/laurent_dami.png" title=3D"Laurent Dami" width=3D"80" />
=20


=20
>


oduction-to-the-series-b6a" style=3D"
font-size: 18px;
font-weight: bold;
">Beautiful Perl features - introduction to the series>

=20
by
ogspot.com/">Laurent Dami (etacpan.org/author/DAMI">DAMI) <=
p style=3D"font-size: 16px">
Expressiveness of the Perl programming language. Perl vs o=
ther languages : Compare facts, not opinions.


=20

m/img/laurent_dami.png" title=3D"Laurent Dami" width=3D"80" />
=20


=20
>


async-htmx/" style=3D"
font-size: 18px;
font-weight: bold;
">Dancer2 + Dancer2::Plugin::DBIC::Async + HTMX


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


=20


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


ilding_a_solana_telemetry_engine_with_perl_542/" style=3D"
font-size: 18px;
font-weight: bold;
">Building a Solana Telemetry Engine with Perl 5.42 (AnyE=
vent, SQLite WAL)



=20


=20

=20
=20


=20
>


-10-000-to-the-perl-and-raku-foundation/" style=3D"
font-size: 18px;
font-weight: bold;
">Fastmail Donates USD 10,000 to The Perl and Raku Founda=
tion


=20
by rl.org/users/olaf_alders/">Olaf Alders (=3D"https://metacpan.org/author/OALDERS">OALDERS) an>


=20


=20

m/img/olaf_alders.png" title=3D"Olaf Alders" width=3D"80" />
=20


=20
>


your-chance-to-sponsor-tprc-2026/" style=3D"
font-size: 18px;
font-weight: bold;
">Cast-Iron Community: Your Chance to Sponsor TPRC 2026a>

=20
by
rl.org/users/olaf_alders/">Olaf Alders (=3D"https://metacpan.org/author/OALDERS">OALDERS) an>


'Perl is my cast-iron pan - reliable, versatile, durable, =
and continues to be ever so useful.'


=20

m/img/olaf_alders.png" title=3D"Olaf Alders" width=3D"80" />
=20



Discussion

=20


=20
>


ginner_struggling_with_quotes/" style=3D"
font-size: 18px;
font-weight: bold;
">Beginner struggling with quotes



=20


=20

=20
=20


=20
>


day_in_the_life_with_perl/" style=3D"
font-size: 18px;
font-weight: bold;
">A day in the life with Perl



It is more like a questionnaire, but you can discuss the a=
nswers.


=20

=20
=20


=20
>


to_format_detection_with_perfidy_anyone/" style=3D"
font-size: 18px;
font-weight: bold;
">Auto format detection with perfidy anyone?



Would you like to have a tool that would look at your code=
-base and generate a perltidy configuration file that matches it?


=20

=20
=20



CPAN

=20


=20
>


font-size: 18px;
font-weight: bold;
">OSDC Perl 2026.01 report


=20
by com/">Gabor Szabo (org/author/SZABGAB">SZABGAB)

style=3D"font-size: 16px">
Starting from December I organize online events where we c=
ontribute to open source projects. This report is about the Perl-related co=
ntributions in January. BTW the next event is tomorrow. Sign up https://luma.com/perl-maven">here


=20

m/img/gabor_szabo.png" title=3D"Gabor Szabo" width=3D"80" />
=20



Grants

=20


=20
>


perl_dave_mitchell_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">Maintaining Perl 5 Core (Dave Mitchell): January 2026a>

=20
by Dave Mitchell
=


'During January, I finished working on another tranche of =
ExtUtils::ParseXS fixups.'


=20

=20
=20


=20
>


perl_tonyc_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">Maintaining Perl (Tony Cook) January 2026


=20
by Tony Cook (/metacpan.org/author/TONYC">TONYC)
=


=20


=20

=20
=20


=20
>


dev_january_2026" style=3D"
font-size: 18px;
font-weight: bold;
">PEVANS Core Perl 5: Grant Report for January 2026


=20
by code.blogspot.com/">Paul Evans (s://metacpan.org/author/PEVANS">PEVANS)
=


This month I managed to finish off a few refalias-related =
issues, as well as lend some time to help BooK further progress implementin=
g PPC0014.


=20

m/img/paul_evans.png" title=3D"Paul Evans" width=3D"80" />
=20



Perl

=20


=20
>


k-in-psc-213-2026-02-02.html" style=3D"
font-size: 18px;
font-weight: bold;
">This week in PSC (214) | 2026-02-02



=20


=20

=20
=20



The Weekly Chall=
enge

=20

nge.org">The Weekly Challenge by Mohamma=
d 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 o=
ne champion at the end of the month from among all of the contributors duri=
ng the month, thanks to the sponsor Lance Wicks.


=20


=20
>


hallenge-360" style=3D"
font-size: 18px;
font-weight: bold;
">The Weekly Challenge - 360


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Welcome to a new week with a couple of fun tasks "Text Jus=
tifier" and "Word Sorter". 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.


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


ge-359" style=3D"
font-size: 18px;
font-weight: bold;
">RECAP - The Weekly Challenge - 359


=20
by rg/">Mohammad Sajid Anwar (etacpan.org/author/MANWAR">MANWAR)
=


Enjoy a quick recap of last week's contributions by Team P=
WC dealing with the "Digital Root" and "String Reduction" tasks in Perl and=
Raku. You will find plenty of solutions to keep you busy.


=20

m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" />
=20


=20
>


tml" style=3D"
font-size: 18px;
font-weight: bold;
">TWC359


=20
by Ali Moradi

style=3D"font-size: 16px">
Using the power of Perl's capabilities, the provided solut=
ion provides an elegant solution to each of the two TWC359 challenges. Task=
1 makes efficient use of a concise while loop to compute digital roots and=
persistence in less median time than most standard solutions would yield. =
In Task 2, you can see how the use of Perl's global regex substitution prov=
ides a very simple way to remove duplicate entries in adjacent positions wi=
th just one line of code. From a code implementation point of view, this so=
lution exemplifies what a professional Perl implementation of both tasks wo=
uld look like.


=20

=20
=20


=20
>


le=3D"
font-size: 18px;
font-weight: bold;
">Root Reduction


=20
by ings.com/">Arne Sommer

=3D"font-size: 16px">
This article provides two elegant solutions for the Raku p=
rogramming language, which illustrate both Raku's clean syntax as well as t=
he practical application of Raku's features. The digital root implementatio=
n uses method chaining features of Raku's expressive method chaining. The s=
tring reduction solution demonstrates how to use the regular expression and=
substitution features of Raku efficiently. There are verbose modes for bot=
h of these solutions that allow for an easy-to-follow, step-wise transforma=
tion of the result.


=20

m/img/arne-sommer.jpeg" title=3D"Arne Sommer" width=3D"80" />
=20


=20
>


ly_challenge_week_359.html" style=3D"
font-size: 18px;
font-weight: bold;
">Perl Weekly Challenge: Week 359


=20
by Jaldhar H. Vyas
=


The answer presented here provides two great results for t=
he TWC359 problems; both are simple and elegant solutions. The calculation =
for the digital root solution is driven through the length of the $root (us=
ing while length($root) > 1); it is a clever way to leverage counting of th=
e number of persistence and summing all the digits to reduce their overall =
size into a single digit (the digital root). The string reduction solution =
is noteworthy due to the way that it has been written in a single line in P=
erl and uses regex to efficiently match and remove patterns.


=20

=20
=20


=20
>


6/ch-359.html" style=3D"
font-size: 18px;
font-weight: bold;
">Reduced Roots


=20
by ommrey.de/">Jorg Sommrey

e=3D"font-size: 16px">
Task 1, Digital Root, uses a Perl implementation with the =
Math::Prime::Util's todigits and vecsum to effectively calculate roots of v=
arious number bases with great efficiency, along with an alternative J solu=
tion using the "Fold Single" conjunction for passing through each digit to =
compute its persistence. Task 2, String Reduction, solutions illustrate a s=
imilar range of concise processing with one-line Perl implementations. The =
J solution had a completely different approach using generalized run-length=
encoding to implement an algorithm that would work on any type of input.


=20

=20
=20


=20
>


Challenge359.html" style=3D"
font-size: 18px;
font-weight: bold;
">quick and dirty!


=20
by .blogspot.com">Luca Ferrari

tyle=3D"font-size: 16px">
A robust method has been found for addressing both TWC359 =
issues and demonstrates a high degree of clean and streamlined implementati=
ons across several languages. The explanation of how to calculate the digit=
al root includes two approaches: the first uses the Raku code $root.Str.com=
b.map (*.Int) and the Perl code split //, $root, to break the digits apart;=
and the second uses a simple while loop to determine the number of times t=
hat digit root has been calculated. The implementation for string reduction=
demonstrates how well regular expressions can be utilized using the compac=
t pattern s:g/ (.) $0 // in Raku and the approximately identical implementa=
tion in Perl, thus removing all adjacent duplicate characters in just one p=
ass.


=20

=20
=20


=20
>


=3D"
font-size: 18px;
font-weight: bold;
">Perl Weekly Challenge 359


=20
by hub.io/">W Luis Mochan

=3D"font-size: 16px">
This article provides ready-to-use versions of the Digital=
Root and String Reduction programs written in Perl, including a concise ex=
ample showing what the results should look like. It uses clear, idiomatic p=
rogramming style while giving short, simple explanations that will help any=
one to understand how to implement an additive persistence and regex based =
string reduction algorithm.


=20

m/img/luis-mochan.jpeg" title=3D"W Luis Mochan" width=3D"80" />
=20


=20
>


ge-club/tree/muthm-359/challenge-359/matthias-muth#readme" style=3D"
font-size: 18px;
font-weight: bold;
">Loops Considered


=20
by Matthias Muth
=


This clean and clever solution combines methods for both p=
roblems into one very helpful implementation. In the first case, digit summ=
ation and computing the persistent product were both implemented as a clear=
, fully-documented do...while construct. In the second case, there is an ef=
ficient method of removing all the nested duplicates with a do...while loop=
while providing an excellent explanation of loop semantics and Perl idioms=
. The detailed comments for each loop's semantics and the use of Perl idiom=
s give a worthwhile educational opportunity.


=20

=20
=20


=20
>


font-size: 18px;
font-weight: bold;
">Root It All You Reduce


=20
by rl.org/users/packy_anderson/">Packy Anderson (<=
a href=3D"https://metacpan.org/author/PACKY">PACKY) span>


The post examines TWC359 comprehensively and insightfully =
via 4 programming languages (Recursive & Iterative Solutions). They show th=
eir vast knowledge of specific Languages through examples such as; Elixir u=
sing Integer.digits(), Raku displaying its fully typed nature, Perl's idiom=
atic approach with sum-split//, and generator expressions found in Python. =
The string reduction implementations use regular expressions extensively to=
reduce complexity and improve performance; especially with regards to the =
subtle differences between how each implement backreferences and substituti=
ons.


=20

m/img/packy-anderson.jpeg" title=3D"Packy Anderson" width=3D"80" />
=20


=20
>


/359" style=3D"
font-size: 18px;
font-weight: bold;
">Persistent reduction


=20
by bellsmiths.force9.co.uk/">Peter Campbell Smith
=


This approach is a good example of intentional design and =
practical implementation. The approach to handling very large integer strin=
gs uses the digital root function; the string reduction uses a simple loop.=
Peter also considers edge cases, such as case insensitivity and non-Latin =
alphabets, which will improve the overall usability and applicability in th=
e real world.


=20

m/img/peter-campbell-smith.png" title=3D"Peter Campbell Smith" width=3D"80"=
/>
=20


=20
>


ie-hatleys-solutions-in-perl-for.html" style=3D"
font-size: 18px;
font-weight: bold;
">The Weekly Challenge #359


=20
by oftware.blogspot.com/">Robbie Hatley
=


These two tasks were solved cleanly by providing clear con=
text for each task with examples demonstrating how the tasks could be solve=
d using=C2=A0idiomatic features of Perl 5.36. The logic used for both tasks=
can be easily read, and uses the core modules in a logical manner. Each ta=
sk contains=C2=A0inline comments that describe what is being done and make =
it easy to follow. The backtracking method of solving the string reduction =
task using split is a particularly clever and efficient way of achieving a =
solution to the task.


=20

=20
=20


=20
>


ekly_Challenge_359__Roots_and_Digits.html" style=3D"
font-size: 18px;
font-weight: bold;
">Roots and Digits


=20
by edrake.org/">Roger Bell West (//metacpan.org/author/FIREDRAKE">FIREDRAKE)
=


This blog post clearly presents The Weekly Challenge #359 =
- Roots and Digits (Digital root task). It is a very clean write-up making =
use of Raku code and does not use extraneous conversion methods. The attent=
ion to algorithm and cross-language consistency creates a very good resourc=
e for other participants in the challenge and is an excellent technical ove=
rview.


=20

=20
=20


=20
>


ital-reduction-1aci" style=3D"
font-size: 18px;
font-weight: bold;
">Digital reduction


=20
by imongreennet">Simon Green (etacpan.org/author/SGREEN">SGREEN)
=


Both parts of The Weekly Challenge #359 are clearly explai=
ned, with detailed explanations of the logic behind the solutions and concr=
ete examples to help you understand how each solution works, in either Pyth=
on or Perl. By providing a solution in both Python and Perl, Simon is able =
to reach a broader audience by explaining how the digital root and string r=
eduction algorithms work.


=20

m/img/simon-green.png" title=3D"Simon Green" width=3D"80" />
=20


=20
>


ning-multiple-values-in-go-python-and-perl/" style=3D"
font-size: 18px;
font-weight: bold;
">I Contain Multitudes


=20
by Yitzchak Scott-Thoennes
=


In this article, you can find an excellent and easily read=
comparison of how each of Go, Python and Perl treats returning multiple va=
lues from a function, with good examples for each and some commentary on wh=
y certain designs are idiomatically preferred in each language, as well as =
why to use a structured return (structure, tuple, etc.) instead of returnin=
g the multiple values returned naked. Overall, this article is a very techn=
ically sound and informative read for anyone interested in designing a func=
tion across different languages.


=20

=20
=20


=20
>


-letters-three-different-ways-weekly-challenge-359-part-2/" style=3D"
font-size: 18px;
font-weight: bold;
">Return to Sender


=20
by Yitzchak Scott-Thoennes
=


This article compares three elegant methods for the string=
reduction problem. The methods are presented in three different programmin=
g languages: Perl (using regular expressions), Python (using recursive regu=
lar expressions), and Go (using a stack-based algorithm). Each method has b=
een chosen to demonstrate the strengths of the respective programming langu=
age.


=20

=20
=20



Weekly collectio=
ns

=20


=20
>


font-size: 18px;
font-weight: bold;
">NICEPERL's lists


=20
by blogspot.com/">Miguel Prz (etacpan.org/author/NICEPERL">NICEPERL)
=


0-great-cpan-modules-released.html">Great CPAN modules released last weeka>;
kly-report-xsjit.html">MetaCPAN weekly report.


=20

=20
=20



Chat about Perl<=
/div>
=20


=20
>


style=3D"
font-size: 18px;
font-weight: bold;
">WhatsApp



Join the Perl Maven chat group on WhatsApp!


=20

=20
=20


=20
>


font-size: 18px;
font-weight: bold;
">Telegram



Join the Perl Maven chat group on Telegram!


=20

=2

  1. 2026-02-01 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] A Dark Day in History
  2. 2026-02-02 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] OMG - ICE!!!
  3. 2026-02-02 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] I'm watching you
  4. 2026-02-02 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] Jewish Artists in Israel today and now
  5. 2026-02-02 Gabor Szabo <gabor-at-szabgab.com> Subject: [Hangout - NYLXS] [Perlweekly] #758 - PTS 2026
  6. 2026-02-02 From: "Free Software Foundation" <info-at-fsf.org> Subject: [Hangout - NYLXS] =?utf-8?q?Free_Software_Supporter_=E2=80=94_Is?=
  7. 2026-02-04 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] Good News!
  8. 2026-02-08 Ruben Safir <mrbrklyn-at-panix.com> Subject: [Hangout - NYLXS] AI and Robots - in the immediate future...
  9. 2026-02-09 Gabor Szabo <gabor-at-szabgab.com> Subject: [Hangout - NYLXS] [Perlweekly] #759 - Perl on LinkedIn
  10. 2026-02-15 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] Coins for Sale
  11. 2026-02-19 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] green eggs and ham..
  12. 2026-02-22 Ruben Safir <mrbrklyn-at-panix.com> Re: [Hangout - NYLXS] [Jewish] Advise for the coming Bizzard
  13. 2026-02-22 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] This is the most pro-Jewish Congressman in NYC
  14. 2026-02-22 Ruben Safir <ruben-at-mrbrklyn.com> Re: [Hangout - NYLXS] [Jewish] This is the most pro-Jewish
  15. 2026-02-23 Gabor Szabo <gabor-at-szabgab.com> Subject: [Hangout - NYLXS] [Perlweekly] #761 - Perl on WhatsApp
  16. 2026-02-24 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] WHy does the Google AI understand that the MTA is
  17. 2026-02-24 Ruben Safir <ruben-at-mrbrklyn.com> Subject: [Hangout - NYLXS] WHy does the Google AI understand that the MTA is

NYLXS are Do'ers and the first step of Doing is Joining! Join NYLXS and make a difference in your community today!