A recent thread on use.perl.org brought up one of the worst myths of Perl 6: That Perl 6 is harming Perl 5.
Andrés N. Kievsky commented in “a thread on use.perl.org”:http://use.perl.org/comments.pl?sid=43716&cid=70320
bq. drop this insane perl 6 thing immediately. Give us good, stablethreading in perl 5 instead of self-hosting grammars in perl 6.
Later he said:
bq. proper OO syntax, multithreading, better speed … are major issues in perl 5 that should have priority over perl 6 work. You can’t expect me to believe that the perl 6 team can’t work on that.
There’s so much misunderstanding here about how open source works, I’m going to ignore the ways that Perl 5 has benefited from the process of creating Perl 6.
The problem with Kievsky’s assessment is that it assumes that:
* contributors are finite
* contributors are interchangeable
* contributors can be directed.
All three are wrong.
First, there is a *vast, unbounded talent pool*. The set of people available to work on Perl 6 is not limited to those who would otherwise be working on Perl 5. It’s not as if there’s a box of people that cannot grow or be added to. There are many contributors who have joined the Perl 6 project without having ever worked on Perl 5. In this instance, Perl 6 has actually brought people into Perl under the Perl 6 banner.
Second, *not everyone can work on the same parts of different projects*. The tasks on Perl 6 may well be very different than the Perl 5 improvements that Kievsky would like to see. I have been contributing to Perl 5 for years, but I’m not at all available to help on the Perl 5 tasks he wants, because they’re not in my area of expertise. However, I can help a lot with Perl 6 tasks, and not just programming. Parrot and Perl 6 are a better fit for me.
Finally, and most disturbing, Kievsky seems to think that by wanting something badly enough, people will work on those tasks. Unfortunately for this idea, *there is no one directing Perl 5 development tasks*, and nor can there be. Open source contributors are volunteers. They work on what they want to work on. Even if I was clamoring for those Perl 5 improvements, I’d rather keep a great programmer working in the Perl community working on Perl 6 rather than leaving Perl entirely because there was no work she felt like doing.
The only way to get a feature added to Perl 5, or any open source project, is to write it yourself, or to encourage others to work with you on it. It’s the way of open source.
Perl 6 and Perl 5 development work are not mutually exclusive. Work will continue on Perl 5 long after Perl 6 has hit prime time.