This week in PSC (232) | 2026-07-06

All three of us showed up to a shorter meeting that dealt entirely with triage. Last week’s new blocker was resolved in the meantime, but we had a few new small ones show up, which we merged fixes for. The last-minute IO::Compress release has needed some oopsie fixes. Another release candidate is inevitable and will be shipping this week.

[P5P posting of this summary]

The AI Revolution is Validating 40 Years of Perl Philosophy

The tech world is experiencing an identity crisis. Pundits are shouting from the digital rooftops that traditional coding is over, replaced by natural human language interfaces. They're calling it a radical new paradigm.
But if you've been paying attention to Perl since 1987, you know this isn't a revolution--it's a homecoming.
When Larry Wall created Perl, he didn't just build a language to sit closer to the metal; he built it to sit closer to speech. While computer science worshiped at the altar of rigid mathematical purism, Perl introduced a context-aware structure built on nouns, verbs, singulars, and plurals.
Today, Large Language Models operate entirely on probability, semantics, and context. We've spent decades forcing humans to think like transistors; now, we've successfully forced silicon to learn human.
Perl programmers are uniquely wired for this future. We've spent forty years treating programming as an exercise in linguistics and context.
The community isn't fading into the past; it's providing the blueprint for what's next. Case in point: The Public Enrichment and Robotics Laboratories (RoboPerl) are currently engineering PerlGPT--a model trained specifically to understand best practices, architectures, and the nuanced wisdom of "Perl poets."
The future of engineering belongs to those who can speak fluent intent.
👉 Watch Randal's full talk on how structural context is dominating the modern landscape: https://youtu.be/hAd6MHXrdh4

TRF lives!

Last month saw the official announcement of The Raku Foundation, including an invitation to every member of the global Raku community to register their interest in the organization and become members, with the right to vote on its leadership, policies, and activities. Once again, I would encourage everyone who loves Raku to do exactly that.

JSON::JSONFold - a CPAN module for compact, readable JSON formatting

I've been working on a CPAN module called JSON::JSONFold, and I wrote an article describing the motivation and design. I'd really appreciate feedback from other Perl developers.

JSON serializers tend to give us two choices: compact JSON, which is efficient but a dense wall of text that's painful to read, or pretty-printed JSON, which is readable but often wastes a lot of vertical space (a small array of numbers can turn into ten lines).

I wanted something in between. JSONFold keeps the shape of pretty-printed JSON, but folds small, simple structures back onto a single line whenever that improves readability. It works on top of your existing serializer (JSON, JSON::PP, JSON::XS, etc.) - you keep using whatever you already have, and JSONFold just reformats the output.

Example 1 - Coding

This week in PSC (231) | 2026-06-29

Once again we were all present.

  • A new blocker appeared. It is only just impactful enough to register, but unfortunately not negligible enough to ignore. We will attempt a resolution before we consider other options.
  • There has been some more activity in the LLM policy discussion, where we didn’t get around to posting our thoughts last week. We will rectify that.

[P5P posting of this summary]

Introducing constant::string and constant::string::uc

If you're like me, you use a constant a lot (I may overuse it). I often use it to turn typos in words and fields into compile-time errors, and for that I usually create constants that either are the named the same as the word, or the word uppercased, like this

use constant +{ SERVICE => 'Service', INSTANCE => 'Instance' };

or

use constant +{ map +( $_ => $_ ), @constants }

and doing that too many times inspired the creation of constant::string and constant::string::uc.

ANNOUNCE: Perl.Wiki V 1.49, etc

The wikis are all available on my Wiki Haven . The modules are available on MetaCPAN. Wikis:
  • Perl.Wiki.html V 1.49
  • Debian.Wiki.html V 1.14
  • Digital.Security.Wiki.html V 1.23
  • Mojo.Wiki.html V 1.20
  • Perl.Wiki.html V 1.49
Modules:
  • CPAN::MetaPackager V 1.04
  • CPAN::MetaCurator V 1.24

GTC 2.20 Pro designer

GTC 2.20 brings a huge amount of new features again (described in this post) and is starting an additional, more trimmed down, high level API, geared more toward what designers expect. But it also comes with new documentation and error handling, the two most important things that were missing for a professional distribution.

This week in PSC (230) | 2026-06-22

All three of us attended.

  • We accepted a number of last-minute patches provided by Karl to improve our z/OS support stance, since they are strictly limited to that system and largely touch things that were broken there anyway.
  • The worrying situation on CPAN Testers for the latest HTTP::Tiny situation cleared up; it was only caused by smokers-only tests against a live system that was intermittently unresponsive. Consequently we have now synchronized with CPAN, which means every one of the late-in-cycle release blockers we had is now addressed.
  • Leon had already begun work on RC1 even before that.
  • We touched base on LLM policy based on the feedback we have had on the thread so far. We have been chewing on some thoughts about that which are in draft state; we agreed that we should actually send them out soon.
  • We discussed one of the two new PPC PRs, about viral value magic, which Leon and Aristotle realized is more similar to tainting and its limitations than previously understood. No verdict was reached; we will continue this discussion.

[P5P posting of this summary]

Urgent PPC Summer 2026 Update!

Thumbnail image for highres_533738236.jpg

Please use this form to submit your talks.

https://forms.gle/PGGHXoYGeEhSapKy5

If you submitted your talk via Papercall (when it was working), we have recovered your submissions and there is no need to resubmit.

You may see the announcement at https://www.papercall.io/perlcommunityconferencesummer26, but talk submissions must go through https://forms.gle/PGGHXoYGeEhSapKy5 because papercall.io is very broken.

If you wish to comment about this post, please do so at r/perlcommunity.

Cheers, Brett Estrade (OODLER)

Perl Community / Science Perl Committee Impact in 2025

Talks Delivered at Winter 2025 Perl Community Conference in Austin, TX

Video editing in progress, will be released after the 2026 Summer PPC.

Each PPC has its own playlist on our YT channel!

Talks Delivered at Summer 2025 Perl Community Conference in Austin, TX

ANNOUNCE: Perl.Wiki V 1.48, Mojo.Wiki V 1.19 etc

I have uploaded to CPAN:
o CPAN::MetaCurator V 1.23
o CPAN::MetaPackager V 1.03

And I have uploaded to my Wiki Haven:
o Perl.Wiki V 1.48
o cpan.metacurator.tree.html V 1.23
o Mojo.Wiki V 1.19

Time::Str - Time Zones and Leap Seconds

This week in PSC (229) | 2026-06-16

This week we had to reschedule to Tuesday in order to attend in full strength.

  • Release blocker triage continues and fortunately has not turned up anything new, but unfortunately has not delivered full resolution of already-known issues either: CPAN Testers says that HTTP::Tiny 0.096 is not a shoe-in, as we had hoped. We will have to evaluate the reports more closely.
  • We nevertheless intend to begin work on RC0, since it mostly consists of writing the perldelta.
  • None of us had time to spend on the LLM policy discussion this week.
  • We discussed the two new PPC PRs in very general terms but need to return to them in more depth next week.

[P5P posting of this summary]

Introducing ZuzuScript

So I've created a programming language which blends a fairly JavaScript-like syntax with fairly Perl-like semantics, and a few other features that I haven't really seen in many programming languages.

This Perl:

use Path::Tiny;

my $str = uc(substr(Path::Tiny->new("myfile.txt")->slurp_utf8, 0, 80));

Becomes this in ZuzuScript:

from std/path import Path;

let str := new Path("myfile.txt")
  ▷ ^^.slurp_utf8
  ▷ ^^[0:80]
  ▷ uc ^^;

The ▷ operator means "evaluate the left side, then evaluate the right side with ^^ set to the result of the left side". It's conceptually similar to | in shells and seems to make a lot of expressions so much easier to understand.

ANNOUNCE: Perl.Wiki V 1.47, JSTree copy V 1.21

Both are available from my Wiki Haven.

Next step will be the validation module for CPAN::MetaCurator, using the new:
use feature 'class'
code.

After that, back to the re-write of all *.pm in CPAN::MetaCurator.

Installing Bit::Vector on Debian 13 (Trixie)

Whilst Bit::Vector is available as a Debian package in libbit-vector-perl, when installing it using cpanm the compile failed for me.

The installation crashed during the make stage, throwing a specific compiler error regarding false and true tokens:

Failure Output:
Building Bit-Vector-7.4
...
cc -c   -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O2   -DVERSION=\"7.4\" -DXS_VERSION=\"7.4\" -fPIC "-I/home/dean/perl5/perlbrew/perls/perl-5.40.3/lib/5.40.3/x86_64-linux-thread-multi/CORE"   BitVector.c
In file included from BitVector.c:12:
ToolBox.h:98:20: error: cannot use keyword 'false' as enumeration constant
   98 |              enum { false, true };
      |                    ^~~~~
ToolBox.h:98:20: note: 'false' is a keyword with '-std=c23' onwards
make: *** [Makefile:343: BitVector.o] Error 1
-> FAIL Installing Bit::Vector failed.

Why this happens:

This week in PSC (228) | 2026-06-08

We were all present.

  • 5.43.11 has so far turned up a few problems, thankfully small. As a result there are new versions of Archive::Tar and HTTP::Tiny to sync, which we intend to merge.
  • We decided how to proceed with our schedule: we will wait another week for any other findings in 5.43.11, and if nothing else shows up then we intend to start working on 5.44.0-RC0 at that point.
  • We discussed briefly the trajectory of the core team’s LLM policy conversation. For now we continue keeping an eye on the thread.
  • We noted PRs to add two new documents to the PPCs repository but didn’t have time to discuss them in this meeting. We intend to do so in the next one.

[P5P posting of this summary]

Is your account on blogs.perl.org registered with an @cpan.org email address?

Then here is a reminder that in light of current events you will want to update your account to use a different email address. (There are about 130 of you that get to jump through this hoop now.)

If you need help, email contact@blogs.perl.org as per usual.

ANNOUNCE: Perl.Wiki V 1.46 & other news

The new Perl.Wiki.html V 1.46 & the JSTree version V 1.20 are available from my
Wiki Haven.

My Journey with Devel::ptkdb - Origins

This post is the first in a series that will follow my re-development of the Devel::ptkdb debugger. This post explains the beginnings of my involvement with the Perl Tk debugger.

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.