Making the case for Perl

While developers and development keep changing, the reasons for using Perl stay the same

Last week I dug into a fairly sensitive topic in some circles: the decline in Perl's popularity in favor of other languages. I received the expected response from Perl diehards, which essentially boiled down to "No, it's not!" with much saltier language.

Somewhat surprisingly, however, as I read comments about my post here and in various places around the Internet, I found that some stalwarts are admitting they see this happening as well. It might be a few large-scale Perl projects that have been rewritten in Python or Java, or a noticeable trend of new projects begun in other languages. One comment on Reddit sums this up well, particularly a key line: "We've got cancer, and denying it just means we can't work to fight it."

[ Also on InfoWorld: Perl isn't going anywhere -- for better or worse | Why admins should know how to code | 6 things every IT person should know | Get practical IT advice and insight with Matt Prigge's Information Overload blog and InfoWorld's Data Center newsletter. ]

That's the crux of the issue right there. Those who casually read my post last week may not understand that I'm in no way anti-Perl -- I've written hundreds of thousands of lines of Perl code over the years, and I still use it for certain tasks. But I see a clear downward trend in the adoption of the language for new projects. That ultimately leads to the mothballing of a language, and I don't believe that Perl should suffer that fate. (As for the Reddit commenter's claims that Perl is significantly slower than Python, Ruby, and JavaScript, I have some serious doubts.)

Some of the shift over the past decade has come from the fact that there are better languages for developing Web applications, and Web apps obviously take a major chunk of the global programming effort. While many popular websites (such as Slashdot) and Web-based apps (such as Moveable Type and Bugzilla) are written in Perl, they are the exceptions. Typically they were born in an era when Perl was a much more viable Web coding candidate than it is today.

Massive websites and large-scale Web-based apps are much more apt to be written in any number of languages other than Perl, simply because those languages are much more in tune with the specific needs of Web applications. This isn't necessarily a knock against Perl's ability to drive Web apps, any more than it would be a knock against PHP for not being the go-to language for doing heavy-duty background data manipulation.

However, a large number of developers default to using other languages in this way, and their reflexes keep them away from Perl for tasks that are more general in nature. This is where Python excels, because it has better Web chops than Perl, along with serious skills in other areas. Thus, it can be used for many other endeavors. That's how Python has become the go-to language for many folks, including many who used Perl in the same way several years ago.

1 2 Page 1
From CIO: 8 Free Online Courses to Grow Your Tech Skills