Hacking Thy Fearful Symmetry

Hacker, hacker coding bright

Shuck & Awe #12: Hunting for Perl

September 9, 2010
shuck & awe perl use.perl.org parcel perl 6 array context cpans cp2000an catalyst const::fast
[yanick@enkidu shuck]$ perl -MO=Deparse news.pl

Holy mackerel, use.perl.org is shutting down! Pudge is changing job and, as hist now-previous $workplace was hosting the site, he is temporarily shutting down the site. Breath easy, though, the blog entries are not all going to disappear in a puff of smoke -- the site will be put in 'static' mode for the time being, and there is the possibility it will reappear somewhere else. Love it or hate it, use.perl.org was one of the first and major Perl blog hubs, and it served the community well during the last 10 years. I, for one, can honestly say it'll be missed (and yikes!, I better make sure all my old blog entries have been extracted and locally saved).

Have a function that returns sometimes a scalar, sometimes an array? The Schwern asks: "why not use Parcels?" He's taken the Perl 6 Parcel data structure and ported it to Perl 5.

dagolden is fiddling with Perl's guts to have the core array functions (push, pop, shift and friends) to DWIM on array references. His end-goal is to be able to do without the noisome array de-referencing in situations like this

my %foo;
push @{ $foo{bar} }, 'a'...'z';

print $foo{bar}[0];   # prints 'a'

and instead directly do

my %foo;
push $foo{bar}, 'a'...'z';

print $foo{bar}[0];   # also prints 'a'

Nifty new rad feature, or yet another yard of rope to hang ourselves with? The jury is still out (personally, I'm on the oooh, shiny side).

Remember cpans from Shuck & Awe? Well, Cornelius reminds us that there's also a Pure Perl version of the tool, and he goes on writing a third version in Bash, for the sake of completeness.

Dave Cantrell managed to merge CPAN with a TARDIS and gives us CP2000AN, a view of all the distributions (with at least one successful test report) that were on CPAN as of the beginning of 2000. And there's more. For like a TARDIS moves in space as well in time, his CP???AN space-time distorting machine also provides us platform-centric views of CPAN. Only want to see distributions working on Cygwin? There is CPcygwinAN. Only want CPAN distributions working on Perl 5.8.8 on irix? There is CP5.8.8-irixAN. You want a view of CPAN for Commodore 64? There is-- Darn. There's not a view for that one yet.

No-one can stop the march of progress. Perl 5.12.2 is out. No mind-blowing new feature this time, but a lot of good healthy bug fixing.

Andy Gorman introduces a new Catalyst controller called Catalyst::Controller::DirectoryDispatch. I'll let your imagine run wild and try to come up with what functionality it performs (but I'll nonetheless give you a hint: it's pretty much does what it says on the can).

First there was constant. Then there was Readonly. Now Leon Timmermans brings us a new constant module: Const::Fast. It's clean, it's simple, it's fast, and it doesn't use XS or any other dark shenanigans. Clearly, a credible contender for the conveted credentials of chief constant creator.

And lastly, to leave this edition on a cheerful note, chromatic takes time to stop, smell the flowers, and discuss what's going right in Perl.

[yanick@enkidu shuck]$ perl -E'sleep 2 * 7 * 24 * 60 * 60 # see y'all in 2 weeks!'
comments powered by Disqus

About the author

Yanick Champoux
Perl necrohacker , ACP writer, orchid lover. Slightly bonker all around. he/him/his