MESSAGE
| DATE | 2025-12-22 |
| FROM | Gabor Szabo
|
| SUBJECT | Subject: [Learn] [Perlweekly] #752 - Marlin - OOP Framework
|
From learn-bounces-at-nylxs.com Fri Dec 26 08:42:29 2025 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 84C051640F3; Fri, 26 Dec 2025 08:42:29 -0500 (EST) X-Original-To: learn-at-www2.mrbrklyn.com Delivered-To: learn-at-www2.mrbrklyn.com Received: by mrbrklyn.com (Postfix, from userid 1000) id E6081164100; Mon, 22 Dec 2025 16:58:37 -0500 (EST) Resent-From: Ruben Safir Resent-Date: Mon, 22 Dec 2025 16:58:37 -0500 Resent-Message-ID: <20251222215837.GB17987-at-www2.mrbrklyn.com> Resent-To: learn-at-mrbrklyn.com X-Original-To: ruben-at-mrbrklyn.com Delivered-To: ruben-at-mrbrklyn.com Received: from s.wfbtzbpn.outbound-mail.sendgrid.net (s.wfbtzbpn.outbound-mail.sendgrid.net [159.183.235.50]) (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 E0E6B1640F3 for ; Mon, 22 Dec 2025 03:39:58 -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=Y3JO520NRLany5MUPP8td5gMZNHtk8mhWRXkLcq3UFU=; b=R37/vZe75vqBFHCfqZBStTK7Od198CGzZ0GVZ/67njrXkuTKYV+NNp5YFMEXszzTqHiW mudUFw+uvIGSgggs1Uc6POr1xy8+nE+MsX07ExbMqpMBlWnpSCRp2+7/2zHvCUK6BbaCRk QkeyBQc+aVAlrLpiQH23H9fEq9d3MjKsJpNcbM2Gd31uW8LSyg/C721+4Q1g9HTY0cS+w9 tzXF6aEk/U7rNKxYwe7Bh914GVMyySX4/UngHG26o89u2FdS1wH6+GIVXX978HPeT3boxu 5iRsQ4hEILmf/ZtFhiYXaCR3z/TaJ6lZ8WNGMQLOElSjW2S35vqNj4HPwaU6UBTg== Received: by recvd-7445688857-zfx6d with SMTP id recvd-7445688857-zfx6d-1-694903DC-C 2025-12-22 08:39:56.822988343 +0000 UTC m=+384401.676696107 Received: from MjA0MzMyMDc (unknown) by geopod-ismtpd-0 (SG) with HTTP id quElMPAMSDuelRlOaMzBJg Mon, 22 Dec 2025 08:39:56.786 +0000 (UTC) Date: Mon, 22 Dec 2025 08:39:56 +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=2F6ApFPPK8dwZP6YspwiLCrOidaZG9c07FW0+?= =?us-ascii?Q?0r09MdZnLXBrp4KHV9z4B09bxq3ShP1S8lg5UPH?= =?us-ascii?Q?ltkwwD9rW1SJSZy=2FMgPE1OAuycCEkmtJCL19=2F8k?= =?us-ascii?Q?7uNFx3MCGKEljQQMxppVmO3ycHrNwpWvXKdGcBD?= =?us-ascii?Q?w=3D=3D?= To: ruben-at-mrbrklyn.com X-Entity-ID: u001.JvYq+PmxR+Jk4HAvLs9YyA== X-Mailman-Approved-At: Fri, 26 Dec 2025 08:42:27 -0500 Subject: [Learn] [Perlweekly] #752 - Marlin - OOP Framework X-BeenThere: learn-at-nylxs.com X-Mailman-Version: 2.1.30rc1 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0559992076==" Errors-To: learn-bounces-at-nylxs.com Sender: "Learn"
--===============0559992076== Content-Type: multipart/alternative; boundary=89ee87ca2107d29f4b541c14dd0c90bfab8de1fe67d51774262ebdbfa7c8
--89ee87ca2107d29f4b541c14dd0c90bfab8de1fe67d51774262ebdbfa7c8 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/752.html
Hi there,
Marlin? Yet another object-oriented programming framework?
There are plenty of choices available already, but this one is worth trying, to be honest. A quick introductory post ( https://blogs.perl.org/users/toby_inkster/2025/12/introducing-marlin.html ) on the subject by the creator, Toby Inkster is worth reading.
Funky? PSPWA Framework?
It's what happens when a PWA and an SPA have a baby, and that baby is raised by a camel who really cares about user experience. The pattern of combining PWA capabilities with SPA architecture has been around for years. Please find out more about it on the official page ( https://funkyfra.me/about ).
We also had another development release of Perl v5.43.6 ( https://metacpan.org/release/SHAY/perl-5.43.6/ ) a couple of days ago. The main change is that using goto to jump into the body of a loop or other block construct from outside is no longer permitted.
The TIOBE Index for December 2025 ( https://www.tiobe.com/tiobe-index ) shows positive signs for Perl. However, you shouldn't take it too seriously. That said, I really enjoy reading it.
This is the last edition of the year 2025 for me - the 196th issue overall - so Merry Christmas and Happy New Year 2026 to all the readers. Please stay safe and healthy.
Enjoy rest of the newsletter.
-- Your editor: Mohammad Sajid Anwar.
Announcements
=20 Introducing Marlin https://blogs.perl.org/users/toby_inkster/2025/12/introducing-marlin.html =20 Yet another OOP framework, where most of your constructors and accessors will be implemented in XS. --------------
=20 Funky - The PSPWA Framework https://funkyfra.me/about =20 A comprehensive guide to building modern, secure, real-time web applications with Perl and vanilla JavaScript. --------------
=20 Foswi=C2=ADki 2.1.10 is re=C2=ADleased https://blogs.perl.org/users/nuddlegg/2025/12/foswiki-2110-is-released.ht= ml =20 We are delighted to announce the new release, which includes 57 significa= nt bug fixes compared to the previous 2.1.8 version. This update addresses a range of important issues and enhances the overall stability and performance. --------------
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
The corner of Gabor A couple of entries sneaked in by Gabor. =20 Perl Maven online: Live Open Source contribution https://luma.com/perl-maven =20 During the holidays, on December 26, there is still an online Perl event = to encourage more people to contribute to open source Perl projects. You are invited! --------------
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Articles
=20 Masters of Destiny https://blogs.perl.org/users/saif/2025/12/masters-of-destiny.html =20 This post is primarily a philosophical essay. Saif uses a fictional dialogue to express skepticism about over-reliance on AI and "dispassionate algorithms," particularly in fields like medicine that traditionally value human judgment and compassion. --------------
=20 Mid-life upgrade to the MailBox suite completed https://blogs.perl.org/users/markov/2025/12/mid-life-upgrade-to-the-mailb= ox-suite-completed.html =20 This is a high-quality project maintenance post from Mark. It provides valuable insight into the pragmatic considerations of modernising a massive, real-world Perl codebase=E2=80=94decisions about language versio= ns, exception frameworks, and managing breaking changes. --------------
=20 TIOBE Index for December 2025 https://www.tiobe.com/tiobe-index/ =20 This is fun index and not to be taken seriously. Perl has +1.33% increase and currently ranked #9. --------------
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Perl Advent Calendar
=20 Using Mojolicious::Plugin::Mount to help test your applications https://perladvent.org/2025/2025-12-15.html =20 This is an insightful, practical tutorial that presents a clever and elegant pattern for integration testing in Mojolicious. It demonstrates a sophisticated understanding of the Mojolicious ecosystem and provides a viable alternative to the more common approach of mocking HTTP user agents. --------------
=20 Auto-instrument your code with OpenTelemetry https://perladvent.org/2025/2025-12-16.html =20 The post introduces a new experimental approach for automatically generating OpenTelemetry traces for Perl code. The traditional options are either 1) use a pre-built instrumentation library, 2) write a custom instrumentation library (hard), or 3) manually instrument your code (tedious). This module offers a fourth, automated path: dynamically instrumenting Perl modules at runtime without modifying their source code. --------------
=20 The Elves Learn to be Lazy https://perladvent.org/2025/2025-12-17.html =20 This narrative post is a superb piece of technical communication. It successfully argues that adopting a modern OO framework like Moose isn't about "cool new features" for their own sake, but about practical engineering benefits: safer refactoring, better testing, and more maintainable code. --------------
=20 Safer last-minute hotfixes before Christmas https://perladvent.org/2025/2025-12-18.html =20 App::Transpierce is a Perl-based command-line utility for managing configuration changes on production systems. Its core philosophy is to provide a structured, safe workflow for emergency "hotfixes" where direct editing on a live server is unavoidable. --------------
=20 Advent of the Underbar https://perladvent.org/2025/2025-12-19.html =20 This is a well-conceived and thoughtfully launched community project. The post successfully makes the case for the podcast's existence by grounding it in the Phileppe's genuine passion and a clear, unmet need for recorded oral history within the Perl ecosystem. --------------
=20 How SUSE is Using Perl https://perladvent.org/2025/2025-12-20.html =20 The primary coverage of the talk concerns SUSE's openQA and the Open Buil= d Service. These both lean heavily on Perl and are tools that you may find useful in your own work. --------------
=20 The Gift of Readability https://perladvent.org/2025/2025-12-21.html =20 The article is a well-crafted narrative that argues readable code is an a= ct of empathy and professionalism, not just a stylistic preference. It stands out by framing technical advice within a memorable story (the elves at the Present Delivery Network), making the concepts more engaging than a dry style guide. --------------
=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 - 353 https://theweeklychallenge.org/blog/perl-weekly-challenge-353 =20 Welcome to a new week with a couple of fun tasks "Max Words" and "Validat= e Coupon". 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 - 352 https://theweeklychallenge.org/blog/recap-challenge-352 =20 Enjoy a quick recap of last week's contributions by Team PWC dealing with the "Match String" and "Binary Prefix" tasks in Perl and Raku. You will find plenty of solutions to keep you busy. --------------
=20 TWC352 https://deadmarshal.blogspot.com/2025/12/twc352.html =20 Overall solid solutions with correct logic. Task2 is particularly well-implemented. The code demonstrates good Perl idioms and problem-solving skills. --------------
=20 Binary Match https://raku-musings.com/binary-match.html =20 Arne Sommer presents Raku solutions to the weekly challenge #352, demonstrating both practical implementations and exploratory algorithmic thinking. It is worth reading for Raku learners and those interested in different approaches to these challenges. --------------
=20 Five is the one-liest number https://dev.to/boblied/pwc-352-five-is-the-one-liest-number-487e =20 Solves the problem correctly, efficiently, and readably. Suitable for Per= l beginners to intermediate programmers. --------------
=20 Perl Weekly Challenge: Week 352 https://www.braincells.com/perl/2025/12/perl_weekly_challenge_week_352.ht= ml =20 Excellent solutions with clear explanations! Your approach shows good understanding of both Raku and Perl idioms. --------------
=20 Triangular Squares https://github.sommrey.de/the-bears-den/2025/12/19/ch-352.html =20 This is an excellent and sophisticated technical write-up. It goes beyond simply providing answers by delving into algorithmic logic, implementing solutions in multiple languages (Perl and J), and including high-quality visual aids for understanding complex array operations. --------------
=20 and here comes Christmas https://fluca1978.github.io/2025/12/15/PerlWeeklyChallenge352.html =20 Impressive polyglot implementation - 5 languages plus SQL variants. Consistent algorithm approach across languages. Good use of language-specific features. Clear code structure and organization --------------
=20 Perl Weekly Challenge 352 https://wlmb.github.io/2025/12/16/PWC352/ =20 This is competition-level algorithmic thinking combined with production-quality code. Truly impressive work! --------------
=20 Doodling with matches and prefixes https://packy.dardan.com/b/fi =20 This is a solid and practical solution guide for Perl Weekly Challenge #352. Its primary strength lies in the Packy's exploration of the same solution logic across four different programming languages (Raku, Perl, Python, Elixir), providing excellent comparative value for polyglot programmers. --------------
=20 Bits of strings and strings of bits http://ccgi.campbellsmiths.force9.co.uk/challenge/352 =20 The solutions are not just correct, but thoughtfully optimized and well-engineered. Clear documentation of design decisions. --------------
=20 The Weekly Challenge #352 https://hatley-software.blogspot.com/2025/12/robbie-hatleys-solutions-in-= perl-for_17.html =20 This post presents a functional but simplistic approach to solving the tw= o challenges. --------------
=20 Prefix the Matches in Strings of Binary https://blog.firedrake.org/archive/2025/12/The_Weekly_Challenge_352__Pref= ix_the_Matches_in_Strings_of_Binary.html =20 This is excellent work from a clearly experienced developer. The solution= s are clean, maintainable code. Roger demonstrates strong algorithmic thinking and practical implementation skills. --------------
=20 Strings and Binaries https://dev.to/simongreennet/weekly-challenge-strings-and-binaries-d7k =20 This is a solid, practical implementation of coding challenges that correctly solves the problems. Simon demonstrates good programming fundamentals and language knowledge. --------------
=20 Not So Loopy Digits https://blog.ysth.info/not-so-loopy-digits/ =20 This solution demonstrates expert-level understanding of formal language theory and automata. This is PhD-level computer science applied to a coding challenge. --------------
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Rakudo
=20 2025.50 Exemplar Poll https://rakudoweekly.blog/2025/12/15/2025-50-exemplar-poll/ =20 =20 --------------
=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/2025/12/dlxxix-16-great-cpan-modules-releas ed.html ); MetaCPAN weekly report ( https://niceperl.blogspot.com/2025/12/dcxxi-metacpan-weekly-report-mcp.ht ml ). --------------
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Events
=20 Perl Maven online: Live Open Source contribution https://luma.com/perl-maven =20 December 26, 2025 --------------
=20 Boston.pm - online=20 https://mobilizon.us/search?search=3DBoston+Perl =20 January 13, 2025 --------------
=20 German Perl/Raku Workshop 2026 in Berlin https://act.yapc.eu/gpw2026/ =20 March 16-18, 2025 --------------
=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
--89ee87ca2107d29f4b541c14dd0c90bfab8de1fe67d51774262ebdbfa7c8 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Mime-Version: 1.0
1.0, user-scalable=3Dyes"> Perl Weekly Issue #752 - 2025-12-22 - Marlin - OOP Frameworke>
color=3D"#ffffff">
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 #752 - 2025-12-22 - Marlin - OOP Framework
latest | https://perlweekly.com/archive">archive | edited by manwar.org/">Mohammad Sajid Anwar
=20 =20
=20
|
=20 Hi there,
=20 Marlin? Yet another object-oriented programming framework?<= /strong>
=20 There are plenty of choices available already, but this one is wort= h trying, to be honest. A ter/2025/12/introducing-marlin.html">quick introductory post on the sub= ject by the creator, Toby Inkster is worth reading.
=20 Funky? PSPWA Framework?
=20 It's what happens when a PWA and an SPAtrong> have a baby, and that baby is raised by a camel who really cares abo= ut user experience. The pattern of combining PWA capabilities with SPA arch= itecture has been around for years. Please find out more about it on the href=3D"https://funkyfra.me/about">official page.
=20 We also had another development release of pan.org/release/SHAY/perl-5.43.6/">Perl v5.43.6 a couple of days ago. T= he main change is that using goto to jump into the body of= a loop or other block construct from outside is no longer permitted.
=20 The TIOBE Index for D= ecember 2025 shows positive signs for Perl. However, y= ou shouldn't take it too seriously. That said, I really enjoy reading it.
=20 This is the last edition of the year 2025 for me -= the 196th issue overall - so Merry Christmas and Happy New= Year 2026 to all the readers. Please stay safe and healthy.
=20 Enjoy rest of the newsletter.
=20 Your editor: Mohammad Sajid Anwar.
| mg/mohammad_anwar.png" /> |
|
Announcementsiv> =20 | =20 =20 | =20 =20 | =20 =20 | =20 =20
The corner of Ga= bor =20 A couple of entries sneaked in by = Gabor. =20 | =20 | m/img/gabor_szabo.png" title=3D"Gabor Szabo" width=3D"80" /> | =20 | =20 =20
Articles =20 | =20 | m/img/saif-uddin-ahmed.jpeg" title=3D"Saif Uddin Ahmed" width=3D"80" /> | =20 | =20 =20 | =20 =20 | =20 =20
Perl Advent Cale= ndar =20 | =20 =20 | =20 =20 | =20 | m/img/paul_johnson.png" title=3D"Paul Johnson" width=3D"80" /> | =20 | =20 =20 | =20 | m/img/philippe_bruhat.png" title=3D"Philippe Bruhat" width=3D"80" /> | =20 | =20 =20 | =20 =20 > e=3D" font-size: 18px; font-weight: bold; ">The Gift of Readability =20 by Branislav Zahradnik =
The article is a well-crafted narrative that argues readab= le code is an act of empathy and professionalism, not just a stylistic pref= erence. It stands out by framing technical advice within a memorable story = (the elves at the Present Delivery Network), making the concepts more engag= ing than a dry style guide.
=20 =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 | m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" /> | =20 | =20 | m/img/mohammad_anwar.png" title=3D"Mohammad Sajid Anwar" width=3D"80" /> | =20 | =20 =20 | =20 | m/img/arne-sommer.jpeg" title=3D"Arne Sommer" width=3D"80" /> | =20 | =20 | m/img/bob-lied.png" title=3D"Bob Lied" width=3D"80" /> | =20 | =20 =20 | =20 =20 | =20 =20 | =20 | m/img/luis-mochan.jpeg" title=3D"W Luis Mochan" width=3D"80" /> | =20 | =20 | m/img/packy-anderson.jpeg" title=3D"Packy Anderson" width=3D"80" /> | =20 | =20 | m/img/peter-campbell-smith.png" title=3D"Peter Campbell Smith" width=3D"80"= /> | =20 | =20 =20 | =20 =20 | =20 | m/img/simon-green.png" title=3D"Simon Green" width=3D"80" /> | =20 | =20 =20 | =20 =20
Rakudo =20 | =20 | m/img/elizabeth_mattijsen.png" title=3D"Elizabeth Mattijsen" width=3D"80" /= > | =20 | =20 =20
Weekly collectio= ns =20 | =20 =20 | =20 =20
Events =20 | =20 =20 | =20 =20 | =20 =20 | =20 =20
|
--89ee87ca2107d29f4b541c14dd0c90bfab8de1fe67d51774262ebdbfa7c8--
--===============0559992076== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline
_______________________________________________ Learn mailing list Learn-at-nylxs.com http://lists.mrbrklyn.com/mailman/listinfo/learn
--===============0559992076==--
|
|