|laziness, impatience, and hubris|
Musings on the futureby zshzn (Hermit)
|on Sep 16, 2007 at 19:38 UTC||Need Help??|
Any current discussion on the topic of the future of Perl has to centre around Perl 6. Perl 6 is the light at the end of the tunnel, that beautiful and optimistic language that we have waited so dearly for.
For the moment, I am tired of hearing about it. I don't want to discuss it. Yet eventually I do. I can't really just ignore it regardless of how much I try. I can't even think anything new about it. Perl 6 has been coming for so long that we have thought all that there is to think, multiple times! We are ready!
Perl 6 is here already, in some senses. As a language it is generally defined. We even have an implementation: PUGS. But Perl 6 is not here, it is not done. We await the day when Perl programmers around the globe can shout from the rooftops, "Hark one, hark all! Perl 6 is here! The language ye have waited for has arrived. Perlers, progress! Others, drop your Ruby and Python upon thy floor and return hence!"
Alas, that day has yet to come. When will it? Not soon enough to put a month on it, but, if we are lucky boys, just a bit after! Or that is the impression that those in the know hint at. For all I know the more we progress the more we find added to the workload-- some odd issue could explain the current time-frame.
Perl 6 will be here when it is ready. It is coming slowly, but it is coming. Apparently. We are not kept very up-to-date on these things. Of course there are Perl 6 summaries and mailing lists, but taken out of context (where "context" is the last few years of consecutive updates) these merely confuse the issue behind bug reports, feature requests, and language explanations. Would one dare to ask for a summary, or graphs, or progress charts, or percentages, or a checklist? I tend to imagine a checklist request would be fulfilled as such:
Perhaps I simply overestimate the defensive nature of those in-the-know. On the other hand, perhaps they are vague or obfuscate to hide some horrible and embarassing truth, for our own good. Perhaps I jest! Perl 6 is ever so fun, do not get me wrong. I am a muse, not a critic.
What if I was to throw a number out there, and that number was 10. Append the unit "years" to that number, and let's suppose that is how long Perl 6 development takes, end to end. It really is not that far off from optimistic estimates, nor would I be bold enough to place odds favouring completion before that point as oppose to after.
What would ten years mean to you? For me, that is a long time. I can just think of what I have done in the last ten years. Or, for that matter, in the seven years since Perl 6 was announced. More relevantly, what do you expect out of a digital product that spends a decade in development? Further, what will we get?
When one thinks of the future of Perl, one thinks about Perl 6. How often do you think past that? Could Perl 6, our ambitious and creative future, be the end of our tunnel? Will Perl 6 last us twenty years, a lifetime in software? Hardly. Perl 6 has already been around for so long that we have new ideas. Do we not all have that little feature that we wished we suggested back in the day? Further, understanding our features is one thing, using a multitude of fresh features is another. Some may be unnecessary or confusing compared to other solutions. Some may need modification of their essense. Beyond features, we will also need to remake much of the selection of modules that helps form Perl, and we will also need new modules for new challenges presented by Perl 6. Then after all of that, we will have bugs. By the time we deal with all of that, we might be ready for a cleanup.
Despite how long Perl 6 could be in development, it should have a fairly short lifespan, after which it could usher in a period of prosperity and good times that could be Perl 7. Perl 7 could be the next Perl 5!
I'm looking forward to it already. UPDATE: Removed readmore tags as tye suggested.