October 2026 Archives

PetaApps - Perl's rightful place

Since 2012 I have been saying in public that Perl needs applications, and that CPAN by itself is not the killer application. These apps never arrived, and the usual answer was "use the right tool for the job". In a time when AI reimplements whole software suites, the question is worth asking again. Our answer is PetaApps: a NAS, a hypervisor, a software-defined network, a mail server and a backup server, on one platform, built on Rust and Perl. None of it is finished. All of it is under way.

pperl 0.6.25 - Childhood's End

pperl 0.6.25 is released; the changelog has the complete record: https://perl.petamem.com/docs/eng/changelog/index.html. Until now pperl showed what it could do: a feature here, a module there, a benchmark won. This release is measured against what others need. The internal libraries and software suites of PetaMem and PetaJoule run on pperl in full, and of the 500 distributions the rest of CPAN stands on, all but three pass - 99.9% of the CPAN River by weight.

pperl 0.6.23 - RANT, REPL and SPEED

pperl 0.6.23 is released. As announced in the addendum to the last release post, the complete record of what changed is no longer this post's job: it is in the changelog, one page per version, at https://perl.petamem.com/docs/eng/changelog/index.html. That leaves the post free for three things. One is a rant, about licences and how pperl came to have its own line editor. One is a prompt: pperl has an interactive mode now, a REPL for Perl that keeps your variables from line to line and tells you whether your loop was compiled. And one is speed: MIME::Base64, Digest::SHA and Encode, three modules whose perl5 versions are C, now run significantly faster in pperl than in perl with that C.

Peta::NN - Surface Detail

Peta::NN is a neural network library written in Perl: models are defined, trained, measured and shipped from a Perl script, with no dependency beyond perl 5.36. It is not a binding to somebody else's framework and it does not try to be PyTorch. It trains micro models - a few thousand to a few hundred thousand weights, each answering one narrow question about a string - and composes them: in a pipeline, or fused into one model that runs a whole batch on the graphics card without coming back to Perl in between. It runs on perl5 and on pperl, on three backends, and under pperl one of them is the GPU. Two models of 18,761 and 10,002 weights form the plural of 98.3% of German nouns they were never shown, and of every single noun of the core vocabulary.

pperl 0.6.21 - addendum

This blog entry has no release attached to it. 0.6.21 is an internal version, not for release. In the four days since 0.6.20 a few things happened, but this post is not about new things. It is about old things the 0.6.20 post forgot, about how a project moving at this pace should announce anything at all, and about a question that deserves an answer in public: who pperl is for, at a time when you can ask an AI to port your Perl script to the language of your choice and be done.

About PetaMem

user-pic All things Perl.