Chandra: Cross-Platform Desktop GUIs in Perl - DEV Community
Building desktop applications has traditionally been a challenge in the Perl ecosystem. While we have... Tagged with perl, c, xs, programming.
Beautiful Perl feature: "heredocs", multi-line strings embedded in source code
A piece of "heredoc" data can appear anywhere in a Perl expression. It starts with an initial operator written either << or <<~. The second variant with an added tilde ~, available since Perl v5.26, introduces an indented heredoc, where initial spaces on the left of each line are automatically removed by the interpreter.
Empty string as delimiter
The delimiter string can also be .. an empty string! In that case the heredoc content ends at the next empty line; this is an elegant way to minimize noise around the data.
Several heredocs can start on the same line, as in this example:
my @blogs = $dbh->selectall_array(<<~END_OF_SQL, {}, split(/\n/, <<~END_OF_BIND_VALUES));
Beautiful Perl feature : fat commas, a device for structuring lists - DEV Community
A fat comma in Perl is a construct that doesn't involve a typographic comma! Visually it consists of an expression followed by an arrow sign => and another expression. This is used in many contexts, the most common being for initializing hashes or for passing named parameters to subroutines:
Notes on using regular expressions in Python and Perl
Summary of how to work with regular expressions in Python. Compares Python with Perl and points out some gotchas.
GitHub and the Perl License | Mikko Koivunalho [blogs.perl.org]
The Solution: Separate License Files
The simplest and most effective solution is to provide each license in its own dedicated file. This allows Licensee to easily identify and display both licenses. This is perfectly valid because the Perl 5 license explicitly allows for distribution under either the Artistic License or the GPL. Providing both licenses separately simply makes it clearer which licenses apply and how they are presented.
My Guilty Perl Obsession
Perl came for free. How much have I contributed in return? Absolutely nothing.
I work as what I’d call an inside-contractor.
I’m a speed-dial (is that still a thing?) phone call away.
Occasionally, a client will call me a dozen times in a day.
I’m closer than their coleague in the next office.
GitHub - obra/Youtube2Webpage: I learn much better from text than from videos
I learn much better from text than from videos.
Youtube-to-Webpage is a Perl script to create a webpage from a Youtube video with a transcript generated from the video's closed captions paired with screenshots of the video.
./yt-to-webpage.pl project-name "videoURL"
Generating Content with ChatGPT - Perl Hacks
Back in January, I wrote a blog post about adding JSON-LD to your web pages to make it easier for Google to understand what they were about. The example I used was my ReadABooker site, which encourages people to read more Booker Prize shortlisted novels (and to do so by buying them using my Amazon
Please add info into DOC how to run PSGI under CGI · Issue #566 · plack/Plack · GitHub
Please put this into synopsys of 'plackup' $ SCRIPT_NAME='/' REQUEST_METHOD='GET' SERVER_NAME='www.test' SERVER_PORT='5000' plackup -s CGI t.pl
Also:
https://github.com/plack/Plack/issues/598
https://github.com/plack/Plack/issues/147
https://github.com/plack/Plack/pull/159/files
https://github.com/plack/Plack/pull/217
https://github.com/plack/Plack/pull/235
jwz: Now I have two problems (Mastodon PHP comments)
Lazyweb, why doesn't this regexp match in Perl 5.32.1, 5.34.3 or 5.18.2 but does in PHP and JS: perl -le 'print 0 + ("ABCDE" =~ m/ABCF|BCDE|C(G)/);' Changing nearly any character, including the C before the G, or removing the parens, makes it match.
Mojolicious and Docker - DEV Community
This post plans to illustrate how you can build and dockerize and Mojolicious application and solve... Tagged with docker, perl, devops, mojolicious.
GitHub - enlightened-perl-organisation/Conference_Video: Tracking the Conference Video Initiative
Tracking the Conference Video Initiative. Contribute to enlightened-perl-organisation/Conference_Video development by creating an account on GitHub.
Build a Better README - Jason A. Crome - TPRC 2024
Your project's README stinks. Let's make it better, together!Your project's README on Github is your project's landing page, your one chance to land a solid first impression with a new user. So why are so many READMEs so boring? With minimal effort, you can make a lasting impression that win over users who might otherwise move on to another project instead.
Jason Crome will show you some techniques for making an eye-popping README for your project, using Request Tracker, Dancer, and other popular projects as models for what can be done. By the end of this short talk, you'll be able to take your project's README to the next level and set yourself apart from other open source projects.
Collaborators needed for bring full OpenAI support to Perl
Thus, that module was deprecated in favor of Nelson's OpenAPI::Client::OpenAI module. Throw the 13K+ lines OpenAPI spec for OpenAI at it and it just works. Further, the module is pretty much a single Perl class rather than a bunch of hand-crafted code.
CPAN authors know it can be hard to keep modules up-to-date (mea culpa, mea culpa!) and this module is no exception. I need this module so I offered to collaborate and created a PR to update it to version 2.0.0 of the OpenAI spec. It now passes all the tests (for those wondering, you need an OpenAI key and it costs $0.04 USD to run the test suite).
In trying to build a Whisper pipeline for that, I found that I couldn't. There was a PR for Whisper support for the older module, but for the newer one, I can't figure out how to get it to issue a request with multipart/form-data support. I've noted the issue in the PR.
Perl Advent Calendar 2014 - PSGI, Enabling Modern Web Technology in Perl
In recent years we've seen an explosion of powerful web technologies in Perl not at the least due to the creation of the PSGI specification.
Plack provides the Plack::Middleware class that makes the process of modifying the response easier, and along with Plack::Util helps us deal with the slightly more complex cases where there's a callback for a response from our inner class:
Plack::Test
Another great thing about abstracting away the actual webserver that our PSGI application is talking to is that we don't actually have to have a real webserver at the outer layer at all! If we just want to test our application we can do this in process by just sending input to the anonymous subroutine and examining the return values.
Sereal — a binary data serialization format | by booking.development | Booking.com Engineering | Medium
By: Steffen Müller, Yves Orton, Damian Gryski, Chris Veenboer, Rafaël Garcia-Suarez, Ævar Arnfjörð Bjarmason As with many things in computing, serialization of data structures is a game of…
Moving from CGI to PSGI and Starman
Moving from an old CGI application to Plack/PSGI in CGI mode and to running it in the Starman application server.
Goal - Mission Statement | Gabor
Goal - Mission Statement
Help individual people and teams to improve their skills and processes so they can create better quality software faster while they enjoy their work more. So in the end they will have a better job. All this while I enjoy my work and make enough money to sustain my life.