jump to navigation

What I would love to see in 2011 for Perl January 1, 2011

Posted by claudio in Uncategorized.
Tags: , , , ,

2010 has been a great year for Perl. The community is vibrant and enthusiastic. The Modern Perl wave was not a hype and it is still going strong. Everyone seems to really agree on this. Eweek does even put Perl on number 6 on the group of languages like Java, C, C++, C# and JavaScript  and before other popular dynamic languages like Python (9) and Ruby (10). (This without giving too much importance to popularity lists or feeling animosity towards other languages.)

Anyway, too much to mention in detail, but I’ll remember the first Rakudo Perl 6 implementation for end users (how much vaporware do have working implementations), the release of Perl 5.12 with real improvements and with a new regular release cycle, the 1.0 release of the Moose Object System and the widespread adoption in the Perl world, the fast pace of the development of the Padre IDE, the enthusiasm of Perl::Staff at FOSDEM and CEBITT, the 10.000.000th (!!!!!) test report on CPAN thanks to the CPAN Testers, perlbrew, cpanminus, the release of the book Effective Perl Programming (2nd ed.) and Modern Perl

Would asking more qualify as hubris? I have just a small suggestion and no idea of it would be realistic from a technical or commercial point of view:

  • The Perl OO system is a present from Python. It’s flexible, it works and it needs a lot of boilerplate.
    Without being a copy of Perl 6, though inspired by it, Moose is a well-thought, modern and rich Object system. I am realistic enough to understand that it won’t be part of Perl core, but it would be great candidate for a double life module (included in the Perl tar and available newer versions on CPAN). When needed or wished, one can always bless variables or use other CPAN modules for creating objects, but there would be a clear default way of doing it. Batteries included, one may say:) .
  • Now getting a little personal, a little request to Randal L. Schwartz, Tom Phoenix, brian d foy: Please add a simple OO chapter based on Moose to -hopefully upcoming- Learning Perl, 6th edition (this is the commercial part mentioned before).
    New Perl Hackers need to know what the preferred OO framework is on Modern Perl without resorting to Google. What better entry than that great book that helped a lot of us (including me) take our first steps in the world of Perl?

You never know… now is the time for wishes.

Update: Moose core-developer Stevan Little blogs about this post and brian’s comments beneath. I don’t know if chromatic’s post about “The Minimalist Object System and Your Lousy Axioms” is directly related to this or Stevan’s aforementioned clarification on the Moose ecosystem, but it’s certainly an interesting addition to the discussion.


1. Randal L. Schwartz - January 2, 2011

That would be in Intermediate Perl, the Alpaca Book. Not Learning Perl. But yes, we’re looking at what to put into the upcoming editions.

2. brian d foy - January 2, 2011

I think there will be a very simple introduction to Moose in the next Alpaca. It will not be complete, though. We’re not going to write a Moose book.

Note, though, that calling Moose “the preferred OO framework” is a bit of puffery. Some people prefer it, but I’ll bet you most Perlers have never even looked at it. Not only that, the fragmentation of Mouse, Moose, Moo, and wahtever else out there is starting to confuse people who haven’t started yet (so it’s a frequent question I get). I think Moose might be around for a few years, though, so it deserves a chapter.

3. claudio - January 2, 2011

Randal, brian,

When thinking about the old title of “Intermediate Perl” (“Learning Perl Objects, References, and Modules”) makes it indeed a more obvious candidate.

4. claudio - January 2, 2011


“Some people prefer it, but I’ll bet you most Perlers have never even looked at it. Not only that, the fragmentation of Mouse, Moose, Moo, and wahtever else out there is starting to confuse people who haven’t started yet (so it’s a frequent question I get)”.

Based on your answer I think we share the same preoccupation: the confusion. My tactic would be pushing Moose/Mouse (they share the syntax) in a “batteries included” setting.

It may be indeed a little overreaching to call Moose the preferred OO system on Perl. However, “preferred” does not mean that other systems would be marginal.

The Moose book would be welcomed (I think chromatic plays with the idea), but that’s not what I meant for Learning Perl (or as corrected: Intermediate Perl). Just the basics that will satisfy most beginning programmers would do: creation, attributes, methods, basic inheritance/roles. Like you said: a chapter, not a book.

5. brian d foy - January 2, 2011

Also, Randal has already written what will probably be the basis for the Moose chapters as The Moose is Flying and the The Moose is Flying, Part II in Linux Magazine. Those columns redo the barnyard example to use Moose instead, but only after they already know how to do it with the built-in OO.:)

6. Perl core, documentation and Moose (aka “can of worms”) « *n*x - March 5, 2011

[…] seems I am not alone on the subject I raised in my New Years wishes (wishes, not demands). […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 197 other followers

%d bloggers like this: