RECENT ENTRIES
MetaCPAN seems to be an attempt at a more open CPAN. It even has what looks to be a very nice API (link to beta docs). I'll have to give that a try. I have updated CPAN related links to the right to point to MetaCPAN instead of the older CPAN website. It may still be a little rough around the edges but it seems to work well enough for my purposes right now.
The latest perl has shown up on CPAN. See the perldelta perldoc for information about what's new.
Some highlights:
* Builtin array and hash container functions accept references.
* Assignment to $0 sets the legacy process name with prctl() on Linux. This is actually something I blogged about awhile ago.
* Non-destructive substitution. How many times have I needed this?
And here it is (tarball). Surprisingly little about it so far.
PSGI is a very useful and needed project. Apparently there are those that don't see the point. Chris Prather has written a useful response.
I haven't seen a test release of Catalyst in a while, but I am really looking forward to Catalyst with PSGI replacing Catalyst::Engine.
Last week I completed a project I had been working on for a little more than three months. The project replaced nearly every element of a currently existing system. The release went very well. Not one serious problem. A big reason for this was Moose. Using Moose I was able to create a framework that I used throughout much of the code. I wrote a whole host of tests that exercise the framework as well as each role that the framework can use. Using Moose made this easy-peasy (is that how you spell that?).
One interesting thing that I discovered was that Moose, despite people constantly saying so, does not seem to add a significant startup penalty. A not insignificant part of this project is a suite of command-line tools that people use every day. These tools rely on the previously mentioned framework. Most of these tools consume at least a half dozen roles, if not many more. Moose and various MooseX modules are used liberally throughout this system. Yet my tests show that the startup time is not significantly different from the previous system. More importantly there have been no complaints about startup time from the users. Very impressive.
This was the first major project I have ever used Moose on. Using Moose and other elements of the Modern Perl approach I was able to completely rewrite a non-trivial system, make that system significantly better, and do it in a reasonable amount of time. I cannot be happier with the results.
An informative post that attempts to compare accessor speed for different object systems (and some non-object systems). The benchmarking is hardly perfect (read the comments for complaints) but I think it may spark a good discussion.
I found this review of Perl Best Practices (Chapter 15) to be of interest. Considering the reviewer, Dave Rolsky , is a major contributor to Moose (along with a lot of other great modules) it comes from a voice of some authority.
There are some objections (remember inside-out objects?), but overall PBP does quite well according to Mr. Rolsky. I don't have much to add as I agree with his review (I still don't like separate read / write accessors though).
Exporter::Declare: After yammering about how much I like Sub::Exporter I discover another exporter that, until today, I had not heard of. It looks very promising and I plan on testing it out "sometime soon".
Sub::Exporter: I've started using this module when writing modules that have symbols to be exported. It is much better than the standard Exporter and its documentation has a handy comparison to other CPAN export modules. I've found it to be very easy to use and extremely powerful. It was used as the exporter for Moose for a reason. It is simply the best exporter available.
A site named perltraining.com.au is publishing three short articles about Perl best practices. Two have already been published. The first one looks pretty good. The second mentions Try::Tiny but otherwise I didn't find it very interesting.
I have yet to live up to my promise and write a review of Modern Perl (part of the problem is that I have a glut of books that I received over Christmas).
Perhaps you'd like to read David Golden's brief review?
Anyway, the book has always been available electronically and for zero cost. Available in multiple electronic formats. I have read much of the book and it is very good. I recommend anyone who is a Perl programmer to read it. Also recommended for programmers who aren't everyday Perl developers.
I read this blog entry with some interest. It isn't exactly a secret that Moose can substantially add to the startup time of your application. The comments are interesting as well. One of them led to this other post which I found especially interesting.
For a good rundown of more recent Test::More features check out this blog post.
A new site was announced today: perl.la. The stated goal is to promote the Perl ecosystem in Los Angeles and surrounding areas. I've added it to the list of PERL RELATED I link to on the right hand side. Check it out.
PERL BLOGS