Linked by Shlomi Fish on Sat 16th Oct 2004 07:28 UTC
General Development The purpose of this essay is to explain why I believe Perl 6, the way it currently seems to progress, is the wrong thing at the wrong time, and why I predict (with all the expected caveats of predicting something) that it won't be successful. I will also suggest a better alternative for the future of Perl which makes more sense at this point.
Permalink for comment
To read all comments associated with this story, please click here.
Odds and ends
by Jmoiron on Sat 16th Oct 2004 08:49 UTC

Language design is somewhat of a guilty pleasure of mine, although I'm not very good at it. I had a few "Waaaah?" moments while reading the article.

What is "The Perl Family of Languages"; and why oh why is Ruby there? I'm not familiar with Ruby's history, but I know that it looks and feels much more like Python than Perl.

But here's what I see from the article. User of Perl(5) sees deficiencies in Perl(5), but doesn't think they are defeating. User does not come to terms with the fact that Perl(6) redesign is in an attempt to achieve some of these features and not hurt Perl(5) programmers.

Why do you think that Python became so popular? Why do you think Ruby is gaining popularity? Anonymous poster of comment #2 was dead on in his assessment; Perl is a nasty hack of a language. Its niche is in system scripting where using bash would be a hassle or more speed is desired (other popular languages are not nearly as good as perl for scripting a-la shell scripting).

But in order for a language to survive, it has to do many things well. The new language on the block has to prove that it is *very* desireable before it reaches any kind of an install base; and once it achieves that ubiquity, resting simply on that will only keep it around for so long. The improvements in Perl(6) are a testament to the fact that Wall has already waited quite a while.

The lack of threading kept it out of the past 3 years gui programming phase; although you could probably argue that its unwieldy syntax also helped. However, since Python provied something that Perl(5) did not (threads), it has gained a certain ammount of ubiquity for that area.

This all relates a lot to what was talked about in the essay; especially when dealing with ubiquity (so many modules already written for Perl(5), or the iceberg principle). How long do you want to keep Perl(5) on life-support? How long before someone takes some other similar (in power) and nearly ubiquitous language (like Python is becomming, or maybe someday soon Ruby) and re-do their scripts so they can kill Perl(5)? How long can you stall, scrapping projects together, as other things with better features take over your install base?

Not liking Perl6 is one thing, but not seeing it for what it is (the only logical step that keeps perl from fading or falling out of favor 10 years down the line) because you like the syntax of 5 better is just silly.