This week in PSC (182) | 2025-03-06
All three of us attended, but none of us had the time for significant discussion, so we decided to reclaim the time and make some progress on our various to-do list items.
All three of us attended, but none of us had the time for significant discussion, so we decided to reclaim the time and make some progress on our various to-do list items.
sub some_field : lvalue { state $value = 'some_default' }
(We know, of course, that “class data” is OOPese for “global variable”.)

Handling of undef / false default values in Perl v5.38
Please checkout the post for more information:
https://theweeklychallenge.org/blog/subroutine-signatures
In the last months of the previous century, I had to learn Perl to be able to teach it to professionals. It was my 28th language to use, but still took two years to understand deeply. As experienced assembler and C programmer, I was astound how much more of my ideas I could achieve with this new Swiss army knife in my hands. I fell in love with Perl.
Of course, the only way to learn a programming language well, is to use it for a larger project. So, I started to re-code the business shell scripts and websites to Perl. Part of it was sending automated emails to colleagues.
Your phase in life is probably different, but for my personal feeling it was not too long ago; for Internet's lifespan, the year 2000 is ancient history. The first spec for MIME headers in email were just 8 years old at the time, and many email features were still evolving.
Back to the full roster, albeit with Philippe attending from on the road.
We mainly went over the list of PPCs, with an eye toward the fact that this release cycle is coming to a close.
As an aside regarding PPC0027, we reiterated that we would like use feature ':all' to go away if possible. It was never a good idea anyway, but has become untenable with the introduction of feature flags like indirect and bareword_filehandles, which we expect to have many more of in the future. Since their purpose is to be disabled rather than enabled by default, a simple toggling of all features (on or off) is a nonsensical request.
Die Hochschule der Bayerischen Wirtschaft unterstützt den Perl Workshop 2025 in München.
Wir freuen uns über die Unterstützung durch die HDBW!
Von der bayerischen Wirtschaft, mit der bayerischen Wirtschaft, für die
bayerische Wirtschaft: Die Hochschule der Bayerischen Wirtschaft (HDBW) ist
eine private, staatlich anerkannte Hochschule für angewandte
Wissenschaften - mit Fokus auf Wirtschaft, Technik und Digitalisierung. An der 2012 gegründeten HDBW mit Sitz in
München-Riem studieren derzeit knapp 500 Studierende.

Environment variable PERL_RAND_SEED in Perl v5.38
Please checkout the post for more information:
https://theweeklychallenge.org/blog/random-in-perl
This announcement comes a bit late in the year, but the preparations for the next Perl Toolchain Summit have been going on for several months now. Today I am proud to announce that the 15th Perl Toolchain Summit will be held in Leipzig, Germany, from Thursday May 1st till Sunday May 4th, 2025.
This post is brought to you by Deriv, a Gold Sponsor of the Perl Toolchain Summit 2024.
For 25 years, Deriv has been committed to making online trading accessible to anyone, anywhere. Trusted by over 2.5 million traders worldwide, the company offers an expansive range of trade types and boasts over 200 assets across popular markets on its award-winning, intuitive trading platforms. With a workforce of more than 1,400 people globally, Deriv has cultivated an environment that celebrates achievements, encourages professional growth, and fosters talent development which reflects in its Platinum accreditation by Investors in People.
Cellgraph 0.7 is out. (I introduced it here and there.) And I will tell you about the great new features in the next paragraph and how it helps you to play with logical structures and deepen your understanding of them. But first please let me mention the why!

Originally published at dev.to
In a previous blog post, I explored the modern way to write CGI scripts using frameworks like Mojolicious. But as pointed out in comments, despite the many benefits, there is one critical problem: when you actually need to deploy to a regular CGI server, where the scripts will be loaded each time and not persisted, frameworks designed for persistent applications add lots of overhead to each request.
CGI scripts have historically been written using the CGI module (or even more ancient libraries). But this module is bulky, crufty, and has serious design issues that led to it being removed from Perl core.

Special variable ${^LAST_SUCCESSFUL_PATTERN} in Perl v5.38
Please checkout for more information in the post below:
https://theweeklychallenge.org/blog/perl-regex
I just needed a few rows of UUIDs in a column of a spreadsheet, more for esthetics than anything else. uuidgen to the rescue.
At the time I didn't realize thatuuidgennatively supports outputting multiple ids like souuidgen -C 8
The truly lazy path would have been to read the fine uuidgen manual.
Alas, supposing I needed to make multiple calls to uuidgen, I went with a Perl one-liner with a loop, as I couldn't recall the Bash loop syntax.
Here comes the laziness... I I didn't want to write something like this:
perl -e 'print `uuidgen` for @{[1..5]}';
I'm not so found of of perl's de-reference syntax these days, also that array reference/range was giving "the ick" as my kids would say. I needed something lazier, cleaner. I wondered if there were any default/exported arrays available to me that don't have too many elements to them.... Ah, I know!
Sie bieten, wir catchen!
nicsell ist ein Domain-Backorder-Dienst, auch Dropcatcher genannt, der es Ihnen ermöglicht, auf eine Vielzahl freiwerdender Domains zu bieten, die sich aktuell in der Löschungsphase befinden.
Schon ab einem geringen Startgebot von 10 € können Sie an unseren Auktionen teilnehmen und haben die Chance an Ihre Wunschdomain zu gelangen.
Übrigens: Zur Verstärkung unseres Teams in Osnabrück suchen wir engagierte Perl-Entwickler (m/w/d). Bei Interesse freuen wir uns auf Ihre Bewerbung!
This is a continuation of a series of articles about how to write XS libraries that are more convenient and foolproof for the Perl users, while not blocking them from using the actual C API.
If you spot anything wrong, or want to contribute suggestions, open an issue at the GitHub repo
One frequent and difficult problem you will encounter when writing XS wrappers around a C library is what to do when the C library exposes a struct which the user needs to see, but the lifespan of that struct is controlled by something other than the reference the user is holding onto.

Please find my learning experience in the post below:
https://theweeklychallenge.org/blog/terraform-docker
Available now: Perl.Wiki.html V 1.23.
As from today, when I announce a new version of one of my TiddlyWikis, I'll list the 2 most recent parts of the change log. These are just copies of the most recent parts of the para called VersionInfo.
And why 2 parts? To help those who missed the last announcement.
o Author:
- Ron Savage
- Melbourne, Victoria, Australia
- http://savage.net.au
- https://symboliciq.au
- https://quantumiq.au
- https://metacpan.org/author/RSAVAGE
o version:
- Perl extension for Version Objects
- https://metacpan.org/dist/versionhttps://metacpan.org/dist/version
Hi there!
Recently I tried this port of turbovision and was really impressed by it.
Now I want it to be available for Perl and in progress of coding it.
The progress is happening here
The progress is happening at a moderate pace.
Currently this runs okay on windows, and should also be okay everywhere else (not tested)
Lots of progress is done already.
Lots of work needs to be done.
I think I've crossed an imaginary equator recently and expect it to be finished in a month or two.
Please let me know here about your ideas, so I could add to the module.
PS.
This post is a slight misuse of the "blogs.perl.org" resource, because I want to create some small corner for developers discussion about it, so I am doing an attempt to invite interested people comment about development here.
I had written a Math paper which was not good enough to be published in a journal, yet I wanted to have proof of the date I wrote it on so I could post the paper on the web without other people later being able to question who first came up with the idea.
The way I thought was more correct to do this was to publish the paper's sha256 checksum on the Bitcoin blockchain. Posting the SHA on social media (such as x.com) was not enough, as paid members can edit their old posts.
I got in touch with BBRTJ, the maintainer of Bitcoin::Crypto, who was very helpful in teaching me how to use his module and achieving my aim.
The goal, he told me, was to include the SHA256 checksum as the comment (technically the 'NULLDATA') of a small bitcoin transaction.

Learning GitHub Actions for Map::Tube.
Please checkout the post for more information.
https://theweeklychallenge.org/blog/github-actions
All three of us attended. Other than administrivia we talked about formally documenting our supported platforms, and we intend to start a discussion on the mailing list about this soon. This is also a topic for the upcoming Perl Toolchain Summit.
blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.