Er, Perl replaced an unmaintainable nightmare? Perl, the language infamous for being indistinguishable from line noise?
Er, Perl replaced an unmaintainable nightmare? Perl, the language infamous for being indistinguishable from line noise?
If you have doubts, try writing a complicated production software stack in awk. Then hand it off to a coworker.
One need not be irreplaceably good, if one is already beating the current state of the art by an order of magnitude. Perl did this.
I've easily written tens of thousands of lines of Perl, and not a single person has complained about difficulty reading or maintaining that code. Why? Because I apply all the usual best practices for code hygiene that apply to any language.
Frankly, I think most people are just repeating a meme they heard once, and the rest just get put off by a) sigils, and b) the use of implicit variables (which I tend to use only very sparingly, and mostly in quick one-liners).
But a developer that poorly names their functions or variables, fails to modularize appropriately, fails to document their code, abuses language features because they want to be excessively terse or clever, that kind of person is gonna write crappy, difficult-to-maintain code no matter what language they use.
In fact, I'd argue the advent and popularity of Python--which was pretty radical in how opinionated it was at the time--is a direct response to languages like Perl and C that were a lot more free-form and easier to abuse by poor coders.
https://packaging.python.org/en/latest/overview/
<kidding> OCI (Docker) Containers were invented to overcome the problems inherent with deploying Python applications. </kidding>
I would argue the same of sed/awk; you can write an unmaintainable mess, but you don't have to.
Developers extremely seldom complain about other developers' code to their faces.
Instead they go to lenghts to avoid it if they dislike it severely; right or wrong.
Get the Perl source code for PangZero and you'll understand proper Perl code.