Thoughts on Perl 6 hype and backlash

The news of "Rakudo Star" (a Perl 6 compiler) has spawned enough hype to prompt a backlash. I haven't entirely decided whether I think this is significant or not, much less good or bad for the Perl community, so this post is my attempt to organize my thoughts on it.

Factually, Rakudo is not new -- there have been thirty-one development releases of it. But Rakudo Star is the first prototype of an end-user distribution tarball that includes the latest Rakudo, the Parrot virtual machine, existing documentation, build instructions and so on. I would say it is designed for Perl 6 experimenters, rather than Perl 6 implementors. It means that anyone interested in Perl 6 can now just do this:

$ tar xzf rakudo-star-2010.07.tar.gz 
$ cd rakudo-star-2010.07/
$ more README
... satisfy library prereqs ...
$ perl --gen-parrot
$ make
$ make install
$ ./perl6 -e 'say "Hello World"'

For the Perl 6 project team -- or more broadly, anyone carrying the Perl 6 torch for the last ten years -- the release of Rakudo Star has huge symbolic importance. They're saying, in effect, "look at this cool project we've been working on! We want you to get as excited as we are about what Perl 6 will be able to do". And, you know what, if I were working on something for ten years, I'd be wanting to celebrate, too.

For those outside the project team, the significance of the release isn't so obvious. I can imagine a wide range of reactions:

  • "Cool! I've been wanting to try some Perl 6 but didn't know where to start."
  • "What's the big deal? I can't use it for anything real yet."
  • "This sucks. It's too (big|slow|buggy|incomplete)."
  • "Gee, thanks. Perl 6 gets the attention and Perl 5 gets ignored... again"
  • "Perl 6?"

There is no way reactions to Rakudo Star can possibly live up to the hopes and dreams of those involved the project. I'm not surprised that some of the project members seem defensive in the face of criticism.

Leaving the emotional reactions aside, Rakudo Star still is a significant step forward for Perl 6, as it means inviting a less dedicated group of participants to test and react to the evolution of both the language and the implementation. Some of that will be negative, but some will be positive. More importantly, it will provide focus to the project going forward and shift the mentality -- gradually, one hopes -- from "get it absolutely right" to "get it done".

In the past, I've felt that the Perl 6 effort has been a distraction for Perl 5. On reflection, I've decided that the release of Rakudo Star is good for Perl 5 because it makes it easier for people to assess the relative status of both. Now, more than ever, it's clear that Perl 6 is not going to sweep Perl 5 away any time soon, but people who are interested in the comparison can watch both evolve and decide where they want to invest their time.

It's also pretty clear that Perl 6 is not going to make substantial inroads against Python, Ruby, PHP and other dynamic languages any time soon, either. If anyone was waiting for Perl 6 to rescue Perl, then they'll need to keep waiting.

However, Rakudo Star will help demonstrate common strengths of the current incarnation of both Perl 5 and Perl 6 language development.

  • Timeboxed delivery -- both projects are now delivering regular, packaged development releases that users can unpack, install and explore to see how new features evolve and how it works with previously written code.
  • Tests and a testing culture -- both Perl 5 and Perl 6 are backed by thousands of tests that help catch potential errors or behavior regressions
  • CPAN -- Perl 5 already has it (and it's adding 1,000 distributions a month) and some of the early work by the Perl 6 community has been to start porting some of the more popular Perl 5 modules into Perl 6.
  • Community -- there are dozens (or more) Perl conferences each year. These have often included talks on Perl 6 and this trend will likely continue. While Perl 5 and Perl 6 are different languages, they share not only a common heritage but a common culture as well

I suggest that people put the release of Rakudo Star in perspective. It is not a game-changer, but it is still a big step forward. Those who delivered it deserve kudos not brickbats, and I look forward to a next release that is even better.

This entry was posted in parrot, perl programming, perl6 and tagged , . Bookmark the permalink. Both comments and trackbacks are currently closed.


  1. casual programmer
    Posted August 9, 2010 at 2:16 am | Permalink

    I think this is a fair assessment of the significance of the Rakudo Star release. I would use Perl 6 in a heart beat should there be a stable, well-performing compiler. As it stands, Rakudo doesn't give enough performance and Perl 6 specs are not yet finalized.

  2. Patrick Michaud
    Posted August 9, 2010 at 3:10 am | Permalink

    This is an outstanding and balanced perspective on the Rakudo Star release, thank you for posting it. I do have a comment about:

    There is no way reactions to Rakudo Star can possibly live up to the hopes and dreams of those involved the project. I'm not surprised that some of the project members seem defensive in the face of criticism.

    I'm not sure what you think our hopes and dreams were, but personally I've found the reactions to Rakudo Star to generally be far more positive than I had expected. In fact, I was cautioning the rest of the team to brace for far more negative reaction and they told me I was being a bit too pessimistic. So far, they're right.

    This post and a few others like it imply (to me at least) that the Rakudo team has overly hyped the Star release. I'm confused as to what is being referred to as "hype", or that the "project team" is somehow behind it. Because Perl 6 was also overly hyped for many years; in most ways the core Rakudo team has tried to back off from the hype and simply say "here's what we have, we hope you find it useful (and we plan to keep working on it until you do)." Our motto is "underpromise and overdeliver", which generally means we try to underplay things a bit.

    If you can point to specific areas where you feel the project team is doing the opposite -- i.e., hyping Rakudo Star beyond reasonable expectations, please let me know so that we can correct it.

    If you intended to say that there was no way for Rakudo Star to live up to the expectations of many people for a "Perl 6 release", I fully and wholeheartedly agree.

    Lastly I don't speak for chromatic, but the post you cite was responding to other posts in which David Skoll is prematurely touting the demise of Perl 6 and Rakudo based on some very misleading statistics and pseudo-analysis. To me chromatic's post (and my similar comments in the original thread that spawned it) were more about rebutting the spread of FUD and misinformation than trying to suppress criticism. On the whole we greatly appreciate critiques of our work, but we feel it's far too soon to write off our efforts.

    Again, thank you for a nicely balanced posting, and I hope you can help us clean up any hype that we may be producing.


    • dagolden
      Posted August 9, 2010 at 7:43 am | Permalink

      Just as one example, compare Perl 5.12 released to Rakudo Star - a useful, usable, "early adopter" distribution of Perl 6. One gets a paragraph and a link to a mailing list message. The other gets a formal press release. Perl 5.12.1 didn't get mentioned on TPF, nor have any of the monthly 5.13 snapshots. Relative to how TPF acts normally, it suggests that Rakudo Star is a big deal.

      I certainly don't hold the Perl 6 "team" accountable for TPF's decisions about PR, nor do I hold the team directly accountable for "hype", but I do think the relative publicity in the broader community (blog posts, twitterings, the SOTU, etc.) has implied "Perl 6 is finally here" rather than the more prosaic reality "a development snapshot of a Perl 6 interpreter is released".

      After ten years, it was probably inevitable.

      P.S. If I've overstated your hopes and dreams, please forgive my (ahem) artistic license.

      • Patrick Michaud
        Posted August 9, 2010 at 1:58 pm | Permalink

        Yes, this is exactly what I wanted to clarify -- the original post seems to repeatedly attribute hype to the "project team", when in reality a lot of the hype and promotion seems to be coming from organizations and individuals that the "project team" has little direct influence over. So I somewhat wish the original article had said that parts of "the Perl community" were over-hyping the release, instead of attributing it to "the project team".

        Even so, this is a relatively minor nit in what is otherwise an oustanding article, and I again commend your balanced and IMO accurate evaluation of the significance (and relative non-significance) of the Rakudo Star release. Thank you again for posting what needed to be said.


        P.S.: I should also mention that for most of us actively working on Rakudo Star itself, it's been much less than ten years of effort. In my case, Rakudo has been (at most) a six-year project, and in that time I've had to cumulatively take about a year away from Rakudo due to other issues.

  3. Posted August 9, 2010 at 3:14 am | Permalink

    There is no way reactions to Rakudo Star can possibly live up to the hopes and dreams of those involved the project.

    I'm one of those "involved" people. (In fact, I have the third highest number of commits in Rakudo, whatever that may mean). And the reactions to Rakudo Star have been far better than I anticipated, and were generally a very positive surprise. People joined the IRC channel and thanked and congratulated us. The release announcement was slashdotted.

    Yes, people now say "Rakudo is slow as $funny_metaphor", but that's much better than "Rakudo is vapourware". Once we speed up Rakudo, we can simply post benchmarks and say "look, it's now $n times faster than before". "Rakudo is slow" implies "Rakudo is", and that's a big step forward.

    Besides speed, there was very little complaint about missing features.

    • Patrick Michaud
      Posted August 9, 2010 at 4:04 am | Permalink

      Besides speed, there was very little complaint about missing features.

      FWIW, I think that the complaints about missing features will come with time, as more people get deeper into Perl 6.

      Or am I being too pessimistic again? ;-)


  4. Posted August 9, 2010 at 1:07 pm | Permalink

    I think the real reason behind the TPF giving more attention to Rakudo * than to 5.12 was just that the TPF slowly understands that it needs to do some PR. Back in April when 5.12 was released they did not yet feel enough PR-ish but by July they accepted - a bit - their role in doing some PR for Perl 5/6 and hopefully other Perl based projects.

    I hope this will mean that later releases of both Perl 5 and Rakudo * will get some TPF PR even going as far as sending out formal Press Releases to journalists.

    IMHO in their own way both 5.12 and Rakudo * were major milestones in their respective worlds. 5.12 marking the start of the annual releases and Rakudo * marking an entry point for a lot more people to the world of Perl 6.

  5. Stanley Hopcroft
    Posted August 30, 2010 at 6:42 am | Permalink

    Perhaps a reasonable basis for the comparison of '5 and 6, is that of another pair of numbers 4 and 6, the Internet Protocol version 4 and version 6.

    IPv6 has had an even longer gestation period than Perl 6, the fundamental RFCs have been redone a few times (eg site local addresses) and even now, getting on to 15 years after the announcement, major production releases of Cisco IOS (12.4) do not include fundamental features (eg v6 ACLs).

    And at the same time, there is no real interest in more than half the world in bearing the pain of renumbering to 128 bit addresses.

    Perhaps the moral is anything that is big enough to attract at least the superficial attention of almost every man and his dog is not easy to do. Whether it was done well is something only history will determine.

    (one also thinks of the gut theory of everything, perhaps even more chimerical).