Revolution or Obscurity

chromatic on 2009-01-08T05:21:11

It will be a make-or-break year for Perl. If the Perl developers cannot either bring new life to Perl 5 or turn Perl 6 into something real, this language will, by the end of the year, have moved well down the road to "legacy" status.

Jonathan Corbet, The Grumpy Editor's guide to 2009 (sorry, no link as the story is for subscribers only for a week)

Setting aside the dubious epistemology which seems to infect all discussions of Perl 6 these days, I'm not particularly worried about the technical part of Perl 6. Rakudo will pass over 20% more tests in Parrot's 0.9.0 release (the 25th stable monthly release of Parrot and the 14th or so stable monthly release of Rakudo in a row). Anyone who doesn't think that Perl 6 actually exists, or who thinks that we can't release stable versions hasn't bothered to do any research. The facts do not support any conclusion other than that Perl 6 exists and continually improves. I can forgive people for not realizing that you've been able to write and run real code in Perl 6 for three and a half years, but if you've missed fourteen releases of a software project, you're really not paying much attention.

I also really like seeing all of the articles and entries about people using Perl 6 to write code, even if it's to solve toy problems. Every bug or question or quirk that ends up reported to the Rakudo queue motivates Patrick and Jonathan and Jerry and Moritz and Stephen and... well, everyone, to add more features and fix more bugs and make this amazing language work better.

That helps with the perception problem. (Part of the problem is also subtle lies of blatantly misleading statistics, but I remain stupidly confident that once in a while, someone will stumble across verifiable facts and realize that some conclusions aren't supportable.)

As for Perl 5... well, I can imagine that people who don't read p5p regularly might wonder if there'll ever be a non-testing version of Perl 5.10 released. You and I both know that Perl 5.10 is stable, but if you go by the description on the CPAN, you might wonder why a testing release has dangled for over a year without any subsequent stable release.

Yes, that's horribly untrue to the facts of the situation, and horribly unfair, and I'm a horrible person for saying it, but if nobody knows the cool stuff you're doing, you might as well be irrelevant. Also, I wrote a fair amount of the Perl 5 core test suite so that we know Perl works, I've patched the Perl 5 parser and lexer twice last year to add new features, and I'm up to my elbows tonight refactoring Parrot's garbage collector. Let me burn all that goodwill: if you think Perl 6 has a perception problem, try Perl 5.

It's very easy to point to twenty five stable monthly releases of Parrot in a row (oh look, an easy to repeat talking point) and it's very easy to say "We release a new stable version of Rakudo on the third Tuesday every month, as we've done every month since November 2007", and it's true. It's very easy to point to Rakudo's big chart of spectest progress, which gets updated daily. By this point, you should even be able to predict with some certainty when the next several stable releases of Parrot will occur without even reading the Parrot Roadmap.

Try that with Perl 5.


Propaganda

draegtun on 2009-01-08T09:44:54

Unfortunately "statistics" can be easily bent and presented to make any fact look true ;-(

I think in David A Whetton's case it was just a mistake not understanding what the Freshmeat figures really mean.

Unfortunately though there are lots of people out there falling into exact same trap. And even worse there are people out there doing a lot of "bending" to make things meet their own agenda.

If u can't beat them then join them! I think its time to up the ante with a concerted Perl propaganda campaign. I for one made a conscious decision last year to blog more about Perl and to start giving more back to Perl community and I intend to keep up this commitment despite the slings, arrows & poo that are being constantly flung at us ;-)

/I3az/

Propaganda... and simply Perception

athenot on 2009-01-08T18:46:29

IMO, there seems to be two kinds of users in most tool/language projects. On one side, there are those who approach it with a disinterested and purely pragmatic method, looking to answer the question of whether it will work for the set of tasks at hand, or at least have a good understanding of why the design rationale is good.

On the other, there's the mass of users who follow the hype and use it because XYZ said it's *the* thing to use and go by more subjective metrics, chief of which being the popularity.

It is tempting to harbor disdain for the hype-crowd but they contribute a lot of publicity and allow the first category to justify themselves in front of someone who can't see things objectively.

This reminds me of Apple's launch of OS X. They had integrated all these wonderful frameworks from NeXT and *BSD but that alone was not enough to win the masses. It was the Aqua veneer that made people go "ohhhh shinny" and feel they were using something cool though they had no clue why.

Re:Propaganda

draegtun on 2009-01-09T18:18:23

Typo.... that should be David N. Welton.

/I3az/

Perl5 roadmap?

draegtun on 2009-01-08T09:56:16

BTW... is there a published Perl5 roadmap?

This may help the naysayers see that Perl5 does have a future (even with Perl6).

/I3az/

Re:Perl5 roadmap?

chromatic on 2009-01-08T19:52:31

[Is[ there a published [Perl 5] roadmap?

Not to my knowledge. That would help.

Please

sir_lichtkind on 2009-01-08T12:44:41

I value your efforts but please, the way you defending perl 6 sometimes pisses some people because its sometimes harsh. i can understand why you pissed by stupidety of some but your hiting the wrong people. plus it feels weak to me if you do it in a defending way. Perl 6 ist most interesting language and software project on planet now. period. you can't really argue directly against FUD. Advertising the parrot releases is good but if you concentrate on how many specs where finished, subsystems, tests written, test fulfilled. you give more flesh to you r point and the fact that there are parrot release comes this way only BTW and will more likely accepted as something substantial. In the end not too many people have the guts to solve problems from the ground to top. thatswhy there in no other perl 6 I'm aware of.

Re:Please

chromatic on 2009-01-08T20:09:20

[The] way you defending perl 6 sometimes pisses some people because its sometimes harsh.

Facts are facts. We release a new version of Parrot and Rakudo every month. We've done so for Parrot for over two years, and we've done so for Rakudo since its inception at the end of 2007. Every month, Parrot and Rakudo get better, more stable, more featureful, and more usable. We have public roadmaps and milestones, and Rakudo even has big visible charts which demonstrate daily progress.

Short of chaining people to chairs and forcing them to use Rakudo, I'm not sure what else we can do to demonstrate that it's a viable project -- if making and meeting committments doesn't do that, nothing will.

stable releases

slanning on 2009-01-08T14:21:07

perl5 is more mature, though, and doesn't have as much to prove, so doesn't really need to release as often; while perl6 is young and cocky, looking to prove itself... or do you think perl5 seems dead and needs to dispel the rumors? :) Besides, the CPAN link you gave shows the last maintenance release of perl5 to be 5.8.9, 23 days ago. When was the last maintenance release of perl6? ;)

(There's a point to the topic, though: "Revolution or Obscurity". Information keeps proliferating so fast, that more and more of "information space" is becoming unlikely to ever be found again. Though on the other hand, the ability to search for information is also becoming much better. But people only live so long and have so much capacity for receiving and remembering information (though no doubt there will be improvements), even if you take them altogether, and I think this space of information grows so much faster, that less and less of it is relevant; whatever information does become relevant has to grab your attention, blow your mind, impress you.)

Re:stable releases

chromatic on 2009-01-08T19:59:25

[Perl 5] is more mature, though, and doesn't have as much to prove, so doesn't really need to release as often....

You don't see a perception problem in releasing a testing release (5.10) and not releasing a stable release within a year?

Note that I'm not asking if or suggesting that Perl 5.10 is anything but stable. It's a question about perception.

When was the last maintenance release of [Perl 6]?

The last Rakudo release was 18 December, bundled with Parrot 0.8.2. The next Rakudo release will be 20 January, bundled with Parrot 0.9.0.

I am sure there is an easy answer...

sigzero on 2009-01-08T15:24:41

Why is Perl 5.10 labeled as "testing" again?

Re:I am sure there is an easy answer...

chromatic on 2009-01-08T20:03:14

As far as I can tell, because it might have bugs -- not that 5.8.9 is getting bugfixes anymore -- and because people should test their code before upgrading.

Re:I am sure there is an easy answer...

sigzero on 2009-01-08T21:54:51

Everything has bugs...but it has been out what a year? Looong testing period.

less "if you can" and more "why you should"

jjames on 2009-01-08T23:37:03

There is little argument, I hope, that Perl 6 is a very different language than Perl 5. Different enough that for those who have used Perl 5 to great effect in the past it is akin to the prospect of learning any other 'new' language. Learning a new language with none of the supporting example code and available books as those other 'new' languages.

Learning a new language that doesn't have the stable and fast core that makes the interpreter seem like a good choice over the other new languages.

This doesn't count as an argument against continued use of Perl 5 (other than the fact that competition for mindshare is real competition and deciding not to address FUD or play a marketing game is a losing proposition) but it does count as a proposition to potentially dismiss Perl 6 even though there is significant evidence that it (Rakudo) has regular stable releases.

I don't think that the relevant audience for these arguments care that there is a stable incomplete interpreter. What they need to hear is how Perl 6 lets them more effectively do their jobs. Why is Perl 6 an advance over Perl 5? Why is Perl 6 an advantage over using Ruby or Python or Haskell or ...? Why will the developers we want to hire opt for Perl 6 tomorrow? Perl 6, the spec (not the interpreter), needs advocacy.

Hmm - I don't know if the facts are that important

zby on 2009-01-11T21:42:49

I have the feeling that people judge other people and communities more by attitudes - and no one likes to be corrected, correcting people publicly is picking a fight. I think I like more the Larry Wall's way of replying to critisism.