I’m willing to bet a TON of medical and banking data is still making its way through perl today. (I’m not necessarily saying this is a good thing, but I have years of experience in healthcare IT).
For that matter, there are still folks out there coding, professionally, in FORTRAN.
Thing is, back then, we didn’t know any better. Software was a commodity, and both the people who wrote it and the people who bought it had grown up in a time before the internet, before SaaS; people whose parents who, if they made things, made widgets.
Back then, you could write a piece of software, and it was done.Then you sold it, and moved on. If the old software had bugs, if they weren’t catastrophic enough to cause a lawsuit, buyers learned to live with them. It was too bad; you already shipped the tapes. And few companies employed their own software developers unless they were software development companies. Man pages have a BUGS section, and that’s because there’s no intention to ever fix those bugs, because that software is done.
Software today is never finished. Our first reaction if we see a project with no recent releases is that it’s abandoned, or dead, and certainly that it’s worse than a project with recent commits to the repo. Github is a huge culprit in reinforcing this mentality, but mobile app platforms (stores and OSes) are terrible about this, too. Google constantly changes the Play store in ways that force developers to tweak their apps lest they become incompatible, booted, or get flagged as being “old” a.k.a. “inferior.”
Yet, still, there’s so much software out there that’s complete. An institution may hire a developer to come in and make a change, but it’s usually a contract one-off; it’s more like taking your car in to have the starter replaced. Those systems are going to continue keeping “dead” programming languages (commercially) alive for years to come.
I use perl for that stuff (mostly automation) that’s a bit too complex for bash, but doesn’t need a proper project. Modern people would use python for this kind of thing. But, I’m too old to change!
When it comes to surprising behavior, Perl isn’t any worse than JavaScript. Which admittedly isn’t a great comparison for either language. Most of the bellyaching around Perl has to do with regular expressions, but every other language out there picked up Perl’s regex syntax in a mostly verbatim way (PCRE).
Perl is still as good an interpreted language as any of the others tbh.
Most of its “problems” are cosmetic, which is probably why Python ended up being its successor in many fields.
Given the choice between brutalist and Fisher-Price architecture, most people are going to opt for the latter even if everything’s effectively the same inside.
Perl is a language for programmers. This turns out to be a terrible idea. Everything actually works the first time, so you move on, and you’re left with the sloppiest inscrutable stream-of-consciousness mess that someone banged out whilst working through the problem.
Perl is the only language where you can write more code than you read.
“perl was probably useful once”?!
I’m willing to bet a TON of medical and banking data is still making its way through perl today. (I’m not necessarily saying this is a good thing, but I have years of experience in healthcare IT).
For that matter, there are still folks out there coding, professionally, in FORTRAN.
Thing is, back then, we didn’t know any better. Software was a commodity, and both the people who wrote it and the people who bought it had grown up in a time before the internet, before SaaS; people whose parents who, if they made things, made widgets.
Back then, you could write a piece of software, and it was done. Then you sold it, and moved on. If the old software had bugs, if they weren’t catastrophic enough to cause a lawsuit, buyers learned to live with them. It was too bad; you already shipped the tapes. And few companies employed their own software developers unless they were software development companies. Man pages have a BUGS section, and that’s because there’s no intention to ever fix those bugs, because that software is done.
Software today is never finished. Our first reaction if we see a project with no recent releases is that it’s abandoned, or dead, and certainly that it’s worse than a project with recent commits to the repo. Github is a huge culprit in reinforcing this mentality, but mobile app platforms (stores and OSes) are terrible about this, too. Google constantly changes the Play store in ways that force developers to tweak their apps lest they become incompatible, booted, or get flagged as being “old” a.k.a. “inferior.”
Yet, still, there’s so much software out there that’s complete. An institution may hire a developer to come in and make a change, but it’s usually a contract one-off; it’s more like taking your car in to have the starter replaced. Those systems are going to continue keeping “dead” programming languages (commercially) alive for years to come.
I use perl for that stuff (mostly automation) that’s a bit too complex for bash, but doesn’t need a proper project. Modern people would use python for this kind of thing. But, I’m too old to change!
and perl is orders of magnitude faster than python for document parsing
When it comes to surprising behavior, Perl isn’t any worse than JavaScript. Which admittedly isn’t a great comparison for either language. Most of the bellyaching around Perl has to do with regular expressions, but every other language out there picked up Perl’s regex syntax in a mostly verbatim way (PCRE).
Perl is still as good an interpreted language as any of the others tbh.
Most of its “problems” are cosmetic, which is probably why Python ended up being its successor in many fields.
Given the choice between brutalist and Fisher-Price architecture, most people are going to opt for the latter even if everything’s effectively the same inside.
Perl is a language for programmers. This turns out to be a terrible idea. Everything actually works the first time, so you move on, and you’re left with the sloppiest inscrutable stream-of-consciousness mess that someone banged out whilst working through the problem.
Perl is the only language where you can write more code than you read.
That’s a problem with no coding standards, peer review, etc.
write_good_code() or die(qw(enough rope to hang yourself));
or
die unless write_good_code();