Doesn’t matter which OS you’re running, somewhere in there, your system depends on Perl to get stuff done. Perl turned 25 years old on December 19th. Though venerable old version 5 remains the most popular, many have moved onto Perl 6, which intentionally broke compatibility and still isn’t officially ‘production ready.’ I can’t imagine administering a system without Perl though, so tonight I’m raising a glass of champagne in the direction of founder and creator Larry Wall.
I would have to agree wit the ‘write only’ sentiment. When I was messing around with it, I’d stay up til 2am or so writing code, and when I looked at it the next day, it looked like modem line noise on a terminal screen
Another gripe I had with it was that the Windows extensions seemed a bit janky and poorly documented. Of course, that was years ago, so I’m sure it has improved since then.
However, I have since switched to AutoIt on Windows. It certainly doesn’t have all the bells and whistles that Perl does, but for most of the stuff I was doing (usually automating some GUI task), it seemed to do about 98% of everything I needed it to do, and compiles to very small executables. It has been my primary scripting language for years now.
Edited 2013-01-01 20:39 UTC
That “write only” part says more about you as a programmer than the language in question.
I guess so, especially since I am not a programmer Just someone who needs to write scripts from time to time.
But I have observed that blaming the programmer seems to be a defense mechanism that pundits use to defend a particular language (Java also comes to mind here). But with languages like AutoIt and Python, I can write code that I can actually read the next day, even with my current skills (or lack thereof).
I used to be heavily into perl scripting back in the day. Built a lot of web apps with it.
Then I switched to PHP about 9 years ago and haven’t touched Perl since. I still preferred Perl as a language, but PHP offered much more convenience in the web development department.
I partly agree with the “write only” description. Perl will allow you to write some pretty messy code. But it’s really as clean as you make it.
I wish perl would just die.
I will tell you something i read a long time ago about Doom (the game) but with Perl in mind.
Perl shall never die!, only the programmers.
Perl — the ultimate fun for the geek coder, the ultimate nightmare for the drudge maintainer. I’d say if you have an IT project where PHP or Python will do the job, you’d be better off with them. Nevertheless, I sure have enjoyed Perl programming.
There’s not much Perl in Windows.
I also actively avoided any and all Perl in Syllable.
I’ve always found Perl weird. Its original goal was to be a “glue” language, but we already had that (shell scripts). So instead it’s grown into this giant monolithic all-singing, all-dancing blob of CPAN modules that isn’t really the least but UNIXy in any real sense.
That in turn has lead people to try and use it as a real language. The MTA written entirely in Perl from a previous jobs still makes me wretch a little bit…
You have listed all main reasons I’ve started using Perl back in late ’90s. Yes, it’s a perfect glue code. Yes, we have shell scripts but they are a fragmented, incompatible, unportable, inefficient mess. There *is* Perl on Windows and for the most part it is just – Perl.
After a brief experience of writing shell scripts on Linux and trying to deploy them on Solaris I took Perl and it has never fail me since. It is a weird and ugly language but it does its job extremely efficiently (easy to write non-trivial scripts) and is very portable and maintainable. Most of my scripts from a decade before still work and can be used on every single machine I have access to.
Nowadays, I also prefer Python – it’s simply a better designed language. But it isn’t as reliable and robust as Perl. Primarily because it’s being rewritten over and over. This means that virtually all Python 2.2 and 2.4 installations (the only versions I can find in the office) are almost unusable.
I can’t tell if you’re talking about shell scripts or perl scripts.
I think you mean backwards compatible. I’ve never had an reliability or robustness problems. On the other hand, I haven’t used 2.2 and 2.4 since the mid 2000’s.
2.2 and 2.4? Seriously? Last 2.2 release was almost 10 years ago. I’m afraid you’r problem is not with python, it’s with the company being stuck in the 1990’s
That said, it’s perfectly possible to write code that runs on 2.2 as well as 2.7/3. I wouldn’t WANT to do it but it can be done.
Edited 2013-01-03 04:20 UTC
I felt I had reached a new level of geekiness when I sniggered to see gcc compiling perl with the -Wall flag.
Tend to use it for the odd dirty script on my machine, but I can never imagine it being used to build anything large even though it is.