As I see the comments about my Is Perl 6 pointless, hopeless or just not done? article, I realize that I’ve somehow misled people into thinking I was posing a conundrum about Perl 6.
I’m not.
In the various debates about the evolution of Perl 5 – how fast it should evolve, whether it should break back compatibility, whether it should be renamed, whether it should be renumbered, etc. – I find that I can cluster people based on their opinions of Perl 6.
Because Perl 6 promised so much and (so far) has failed to deliver, I find that Perl 6 opinions are a decent predictor of Perl 5 evolution opinions.
If you think Perl 6 is pointless – or, more politely, just irrelevant to you – then you probably strongly favor stability of the Perl 5 we have today.
If you find the potential of a backwards-incompatible step-change from Perl 5 appealing (as Perl 6 promises) but you don’t think Perl 6 is going to deliver, then you probably favor either more radical evolution of Perl 5 or the possibility of a name change, version bump or fork to break back compatibility for the sake of progress.
If you find the potential of a backwards-incompatible step-change from Perl 5 appealing (as Perl 6 promises) and think that Perl 6 is relatively close, then you probably think Perl 5 evolution debates are tempests in a teapot and wonder why people aren’t more involved in helping Perl 6. Or more practically, you may think that Perl 5 can continue to be a stable rock and people’s energy is better spent on Perl 6.
[Update: raiph’s comment reminded that me that among those who think Perl 6 is close I do find those who are interested in Perl 5-like forks as a stepping stone for Perl 5 to Perl 6 migration. But I don’t generally see Perl 6 proponents arguing for major changes in the existing interpreter.]
How do those characterizations help me?
I’ve spent enough time in the guts of the Perl source and listed to the opinions of those with even great experience and expertise on it that I’m convinced that significant evolution to the Perl 5 interpreter is nearly impossible without a bigger break in compatibility than people are used to seeing in Perl 5.
If the wonders of Perl 6 aren’t enough to convince you that you might someday want to switch to something incompatible with what you have today, then none of the far-less-ambitious ideas for Perl 5 are going to justify breaking anything and there’s no point in having a debate with you about it.
The likelihood of Perl 5 evolving significantly will hinge on the balance between these groups.
If the pro-evolution but Perl-6-disillusioned group is larger or louder than the other two groups combined, then Perl 5 may yet make an evolutionary leap or there could even be a chance for a critical mass to build around a sufficiently awesome fork.
Otherwise, Perl 5 is more or less done evolving except in minor compatible ways and renaming it or doing anything else ambitious isn’t going to succeed in changing the language, the community or external perceptions. We might get Perl 6 or we might not, but the Perl 5 we have now will be substantially the same a decade from now.
If the latter case is what it looks like we have, then I’m pretty much done advocating or participating in further changes in the core, because I think the barriers are too great. I’d rather spend my volunteer time in other areas where I can have more impact.