

Is Perl the World's 10th Most Popular Programming Language? (i-programmer.info) 82
TIOBE attempts to calculate programming language popularity using the number of skilled engineers, courses, and third-party vendors.
And the eight most popular languages in September's rankings haven't changed since last month:
1. Python
2. C++
3. C
4. Java
5. C#
6. JavaScript
7. Visual Basic
8. Go
But by TIOBE's ranking, Perl is still the #10 most-popular programming in September (dropping from #9 in August). "One year ago Perl was at position 27 and now it suddenly pops up at position 10 again," marvels TIOBE CEO Paul Jansen. The technical reason why Perl is rated this high is because of its huge number of books on Amazon. It has 4 times more books listed than for instance PHP, or 7 times more books than Rust. The underlying "real" reason for Perl's increase of popularity is unknown to me. The only possibility I can think of is that Perl 5 is now gradually considered to become the real Perl... Perl 6/Raku is at position 129 of the TIOBE index, thus playing no role at all in the programming world. Perl 5 on the other hand is releasing more often recently, thus gaining attention.
An article at the i-Programmer blog thinks Perl's resurgence could be from its text processing capabilities: Even in this era of AI, everything is still governed by text formats; text is still the King. XML, JSON calling APIs, YAML, Markdown, Log files..That means that there's still need to process it, transform it, clean it, extract from it. Perl with its first-class-citizen regular expressions, the wealth of text manipulation libraries up on CPAN and its full Unicode support of all the latest standards, was and is still the best. Simply there's no other that can match Perl's text processing capabilities.
They also cite Perl's backing by the open source community, and its "getting a 'proper' OOP model in the last couple of years... People just don't know what Perl is capable of and instead prefer to be victims of FOMO ephemeral trends, chasing behind the new and shiny."
Perl creator Larry Wall answered questions from Slashdot's readers in 2016. So I'd be curious from Slashdot's readers about Perl today. (Share your experiences in the comments if you're still using Perl -- or Raku...)
Perl's drop to #9 means Delphi/Object Pascal rises up one rank, growing from 1.82% in August to 2.26% in September to claim September's #9 spot. "At number 11 and 1.86%, SQL is quite close to entering the top 10 again," notes TechRepublic. (SQL fell to #12 in June, which the site speculated was due to "the increased use of NoSQL databases for AI applications.")
But TechRepublic adds that the #1 most popular programming language (according to TIOBE) is still Python: Perl sits at 2.03% in TIOBE's proprietary ranking system in September, up from 0.64% in January. Last year, Perl held the 27th position... Python's unstoppable rise dipped slightly from 26.14% in August to 25.98% in September. Python is still well ahead of every other language on the index.
And the eight most popular languages in September's rankings haven't changed since last month:
1. Python
2. C++
3. C
4. Java
5. C#
6. JavaScript
7. Visual Basic
8. Go
But by TIOBE's ranking, Perl is still the #10 most-popular programming in September (dropping from #9 in August). "One year ago Perl was at position 27 and now it suddenly pops up at position 10 again," marvels TIOBE CEO Paul Jansen. The technical reason why Perl is rated this high is because of its huge number of books on Amazon. It has 4 times more books listed than for instance PHP, or 7 times more books than Rust. The underlying "real" reason for Perl's increase of popularity is unknown to me. The only possibility I can think of is that Perl 5 is now gradually considered to become the real Perl... Perl 6/Raku is at position 129 of the TIOBE index, thus playing no role at all in the programming world. Perl 5 on the other hand is releasing more often recently, thus gaining attention.
An article at the i-Programmer blog thinks Perl's resurgence could be from its text processing capabilities: Even in this era of AI, everything is still governed by text formats; text is still the King. XML, JSON calling APIs, YAML, Markdown, Log files..That means that there's still need to process it, transform it, clean it, extract from it. Perl with its first-class-citizen regular expressions, the wealth of text manipulation libraries up on CPAN and its full Unicode support of all the latest standards, was and is still the best. Simply there's no other that can match Perl's text processing capabilities.
They also cite Perl's backing by the open source community, and its "getting a 'proper' OOP model in the last couple of years... People just don't know what Perl is capable of and instead prefer to be victims of FOMO ephemeral trends, chasing behind the new and shiny."
Perl creator Larry Wall answered questions from Slashdot's readers in 2016. So I'd be curious from Slashdot's readers about Perl today. (Share your experiences in the comments if you're still using Perl -- or Raku...)
Perl's drop to #9 means Delphi/Object Pascal rises up one rank, growing from 1.82% in August to 2.26% in September to claim September's #9 spot. "At number 11 and 1.86%, SQL is quite close to entering the top 10 again," notes TechRepublic. (SQL fell to #12 in June, which the site speculated was due to "the increased use of NoSQL databases for AI applications.")
But TechRepublic adds that the #1 most popular programming language (according to TIOBE) is still Python: Perl sits at 2.03% in TIOBE's proprietary ranking system in September, up from 0.64% in January. Last year, Perl held the 27th position... Python's unstoppable rise dipped slightly from 26.14% in August to 25.98% in September. Python is still well ahead of every other language on the index.
Perl always draws you back... (Score:2)
I've found myself using more Perl for day-to-day tasks lately too. The sheer practicality of the toolset wins in nearly every situation against all other players - established and incumbent - and the relatively static nature of what was once considered fairly bizarre syntax just doesn't struggle to compete against modern meme languages that are a constant moving target of trying to make everything "better."
Re:Perl always draws you back... (Score:4, Interesting)
With this, every thing runs faster than Perl and in some cases runs faster that basic C/C++ without trying too hard. If for some reason we want to GO FAST, we just run it through Shedskin and it will generally be as fast as it gets.
Re: (Score:2)
With this, every thing runs faster than Perl and in some cases runs faster that basic C/C++ without trying too hard. If for some reason we want to GO FAST, we just run it through Shedskin and it will generally be as fast as it gets.
[citation needed]
Another "controversy for clicks" article (Score:2)
Seems that the last X years of TIBOE rankings are mostly the same story, Python, C/C++, .net, Java, SQL and JavaScript in relatively the same rankings.
Why the editorial comments on Perl surging to the 10th spot when it's change in percentage of less than 1% is within any regular survey's margin of error?
We can just ignore these rankings and other clickbait articles as space fillers.
The only apparent trend is that the quality items of long-term language stability (not perpetual feature creep), library compre
Re: Perl always draws you back... (Score:2)
Re: (Score:1)
Whether that's all true or not, Python is one of the worst offenders when it comes to breaking changes, and it was top of my mind when I made the above statement.
Re: (Score:2)
"Python is one of the worst offenders when it comes to breaking changes"
Eh? the 2 -> 3 transition was well over a decade ago dude, and the API stability of python libraries has always been one of its selling points. Considering its rivals like JS and its never ending library updatge hell, thats a weird claim to make
Re: (Score:2)
Re: Perl always draws you back... (Score:2)
Re: (Score:2)
Each one of my venvs requires a specific version of Python to run.
You can say "that's the fault of the libraries using features likely to break" or some such bullshit, but you're just trying to tiptoe around the fact that for any job, Python is just about the worst tool you can imagine.
The reason people use it, is because they're lazy, and there is a lot of poorly-functioning fragile code that runs on it.
Re: Perl always draws you back... (Score:2)
I have written code in Perl and Python professionally for a long while. Perl for almost 10y, then Python for over 15y.
Perl had (has) many issues with the fact that there too many ways to do the same thing g, which leads to very hard to maintain codebases in the medium to long term. It is possible to write unmaintainable code in Python, but you almost need to be a professional idiot to accomplish that, and yes I have met a few of these. They usually do not stay employed too long.
Some of my issues with Perl:
-
Re: (Score:2)
Perl had (has) many issues with the fact that there too many ways to do the same thing g, which leads to very hard to maintain codebases in the medium to long term.
I disagree with you entirely, and I think it's a bizarre bit of logic either way.
You've paired a value judgement ("issue" with "too many ways to do the same thing") with a non sequitur ("leads to very hard to maintain codebases").
Some of my issues with Perl:
- too many ways of doing simple things.
- very cumbersome handling of objects.
- clunky management of third part libraries.
- code that often becomes unreadable over time.
1) Flexibility is bad.
2) Flexibility is bad.
3) Flexibility is bad.
4) Skill issue.
Perl has solid regex support, but if you do all your text processing through regex you have big problems. You should use them sparingly.
Nonsense.
This just indicates, I think, that you are a bad programmer.
You don't understand how to leverage the power of a tool, so you want something with guardrails.
Anyhow, I used to like Perl, but I also used to like junk food until I experienced better options. Kind of like when students love Coors Light until they try higher quality beers, the stuff from Europe or from microbreweries.
And yet, when the goal is to g
Re: Perl always draws you back... (Score:2)
If Perl is the best thing since sliced bread bread for you, good. DuckDuckGo uses Perl and I took a look at their open sourced code a few years ago and was surprised at how readable it was, for Perl. They apparently achieved that with a very strict company wide style guide. I like strict style guides but some folks prefer to be unrestrained and just get things done for that day, the future is a bridge to cross when the need arises. I prefer to write my code so that it stays robust and maintainable long term
Re: (Score:2)
If Perl is the best thing since sliced bread bread for you, good.
It's not. It is, however, in my far-less-than-humble opinion, the most powerful scripting language there is.
DuckDuckGo uses Perl and I took a look at their open sourced code a few years ago and was surprised at how readable it was, for Perl.
So does slashdot.
So does Request Tracker.
On the flip side, Zenoss is about 13 trillion lines of Python, and has the distinction of being the only thing not written in Java that requires about 4 small truckloads of coal in order to just start the software stack.
Every single large Python project I have seen is this way. To an extent, I get the "performance doesn't matter" thing. Throw more hardware a
You have not even seen the worst offenders.. (Score:2)
I've been working with over 30 programming languages and Python definitely one of the least offenders with just one big 2 to 3 migration.
Just recently I've spent weeks to handle R upgrade - similar upgrade took 1,5 day with Python...
Re: (Score:3)
Perl has been my go-to scripting language for a long, long time -- since the '80s. And knowing it means I don't have to use Python. :-)
It's good tool for a lot of things, but just one of many. On the last large cross-platform (Windows, Solaris, Linux) project, I used many different languages: Assembly (x86), Bash, C, Cmd, Java, Ksh, Perl, Postscript, PowerShell, Python, SQL, Tcl/Tk, VBScript -- whatever was best for the particular task on the particular platform. That said, using Perl often allowed th
Re:Perl always draws you back... (Score:4, Funny)
Re: (Score:2)
Why did you never use awk?
I know this was modded Funny, but actually... There were a few stand-alone Awk scripts in that project, but most Awk usage was smaller/simpler calls from Bash/Ksh scripts. I do routinely use awk one-liners, even on my systems at home.
Re: (Score:2)
Re: (Score:2)
Regret a lot of my perl usage ... (Score:2)
I've found myself using more Perl for day-to-day tasks lately too
I've used perl a bit too. But once I started learning python I regretted a lot of my perl usage.
Swiss army knife (Score:3)
I don't care what TIOBE says, even if it measures popularity correctly (which I seriously doubt), it doesn't measure usefulness.
Nobody should make decisions on what programming language to learn/use based on this index.
Re: Swiss army knife (Score:2)
Re: Swiss army knife (Score:5, Insightful)
Sane conventions make it perfectly readable.
Some guy's one liner that rebuilds your entire firmware, kernel, and rootfs? Ya, that's pretty write-only.
Re: (Score:2)
Re: (Score:2)
As for Pascal- never was my cup of tea- death to
It's not dead though- numerous free Pascal compilers still exist for every OS in use- get one and get back in the game!
spoiler: it is probably even more popular (Score:2)
nothing makes the impossible job very hard like petl does.
bless Larry and his demonic cat, fluffy the Ferocious for the perly gift.
so sad that nothing important has happened since he left the pumpkin.
TIOBE is bullshit (Score:2, Redundant)
The TIOBE index is bullshit. We go over this EVERY fucking time the list gets updated.
Its entirely based on "how many results does Google claim exist?" - which is not an accurate metric to begin with for a multitude of reasons, the largest of which is that Google only uses an estimate for the number of results. But as you traverse the results for a given query, the max quantity reported will dramatically shift around as it hits different servers w/ a different view of the estimated total.
And let's not even
Re:TIOBE is bullshit (Score:5, Insightful)
We go over this EVERY fucking time the list gets updated.
And every time it attracts attention and comments it will be posted again.
I do suspect it's also an excuse to talk about programming languages. It might be enough to periodically simply post an article with only the language name as title and body. Next week, C.
Re: (Score:2)
Re: TIOBE is bullshit (Score:1)
Re: (Score:2)
A search popularity index is just vanity. It signals which languages require the most web searches instead of being productive out of the box. Instead, languages should be weighted by user exposure; which languages dominate the software people use daily. I'd say ECMAscript/Typescript at #1, Java/Kotlin at #2, C/C++ at #3, then Swift/ObjC, then trailed by C#, PHP, SQL, and then a whole lot of nothing.
Re: TIOBE is bullshit (Score:1)
I never stopped using perl (Score:2)
Although I seem to be writing more shell scripts lately...
In any case, I'm older and not really in any demographic anyone really cares about. I've fiddled with python a bit, but it doesn't seem to offer any particular advantages to someone who already knows perl.
Re: (Score:2)
I use forth you insensitive clod!
Re: (Score:2)
Re: (Score:2)
If you already know perl and are comfortable with it then sure. But for new devs Python is way more approachable because it has a much clearer and simpler syntax.
Re: (Score:2)
Python is truly a trash-tier language.
It gives Java a run for its money in producing the most bloated and fragile shitcode stacks known to man.
Re: (Score:2)
Re: (Score:2)
That's how I learned what a terrible fucking ecosystem it is.
Python isn't the first bad software stack the internet selected to do a job.
Re: (Score:2)
"It gives Java a run for its money in producing the most bloated and fragile shitcode stacks known to man."
ROTFL!! Riiiight, and perl code is a never a shitpile of inefficient garbage with fragile regexps slung together by a coder who didn't have a clue.
Re: (Score:2)
I mean, it depends how you look at it.
If you are using regexes, you're outperforming Python by around a factor of 20, usually.
If you're not- then it gets more interesting. If the Python is written to work with PyPy, it can actually be pretty fast... if you have to fall back on cpython? Well, the worst Perl you can dream of writing is still more performant than Python. Hell, a large Perl script can run to completion before cpython even finishes compiling.
Re: (Score:2)
"If you are using regexes, you're outperforming Python by around a factor of 20, usually."
You do realise Python can also do regexes? In fact any modern language can, its not unique to perl. Perl simply made them part of its core syntax which is why its such a fucking mess.
Re: (Score:2)
You do realise Python can also do regexes?
Sure do.
In fact any modern language can, its not unique to perl.
Absolutely.
Perl simply made them part of its core syntax which is why its such a fucking mess.
And also why it's so bloody performant. It's not just part of its core syntax- it's part of its core interpreter.
When you use an re object in Python, you're instantiating an object. You can re-use to try to save you some time, but still the method calls are slower than snot.
Equivalent regex-heavy parsing code between Perl and cpython will have a delta of about 10-20x.
Re: (Score:2)
The beauty of vibe coding with Perl is there is so much documentation and support in the public sector, that all the big llms know perl inside and out. I've taking meg upon meg of code and dumped it into llms and cleaned up production code. Meanwhile, ch
Good old C (Score:2)
The "very long term history" table in TFA shows C to be the overall #1.
Yes indeed! (Score:1)
Yes, I'm a Go programmer by profession nowadasys. But when there's a certain kind of task, and I need the results fast. I still reach for Perl.
Re: (Score:2)
We know what perl is capable of (Score:4, Insightful)
"People just don't know what Perl is capable of"
Incorrect. Any half decent programmer knows, we just didn't like its syntax and when something in the same just as powerful but far more readable came along in the same user-case area - ie Python - people switched in droves.
Assembler is very powerful but no sane person would use it to write day to day applications in and I'm afraid Perls explosion in a puncuation factory syntax was ultimately its downfall. Sure, Python isn't perfect with its syntactically meaningful whitespace nonsense, but I'll put up with that for code I can actually understand at first glance.
Re: (Score:2)
Re: (Score:2)
Lean on your keyboard for long enough and you'll have a valid Perl program. You won't know what it does of course, but then how does that differ from any other Perl program?
Perl was way ahead of its time... they were doing "vibe coding" back in the 1990's :)
Re: (Score:2)
The only part of a perl script that necessarily looks like line noise is a perlexp. But regexps look like that no matter what language you use. Just don't write your perl that way and it won't look like that. It takes a lot of lines to do what a complex regexp does without one.
Re: (Score:2)
Right, because other languages require $, & or @ in front of variables all the time. Not to mention all the other line noise that has nothing to do with regexps.
Re: (Score:2)
Oh no a single symbol before a variable or array which makes it clear what it is and how it's being used, how will you ever read that code? bububububu
Re: (Score:2)
Incorrect. Any half decent programmer knows, we just didn't like its syntax and when something in the same just as powerful but far more readable came along in the same user-case area - ie Python - people switched in droves.
Perl and Python are of the same vintage. Vast majority of Perl users and Perl code occur after release of Python.
Assembler is very powerful but no sane person would use it to write day to day applications in and I'm afraid Perls explosion in a puncuation factory syntax was ultimately its downfall. Sure, Python isn't perfect with its syntactically meaningful whitespace nonsense, but I'll put up with that for code I can actually understand at first glance.
There are those who take the time to understand regular expressions and those who write dozens or hundreds of lines of code to do the same job a single line of regex because it was... too hard? looks too weird? I know which of the two I would rather read and or deal with.
Re: We know what perl is capable of (Score:2)
I'll take the hundreds of lines of code. Regexps beyond a certain complexity tend to be fragile with non obvious broken edge cases.
Re: (Score:2)
I'll take the hundreds of lines of code. Regexps beyond a certain complexity tend to be fragile with non obvious broken edge cases.
I think this is insane but your choice.
Re: (Score:2)
> Python isn't perfect with its syntactically meaningful whitespace nonsense
I know a programmer with a visiospatial disability.
Braces are fine. Python is literally impossible.
I looked at a few 'Python with braces' preprocessors for her but they all seemed to be half-done and not really usable.
I'm not quite sure why.
It's a dumb reason to shut someone out of an entire software ecosystem. Almost every other language is accessible to her.
This is not the ground reality (Score:1)
I learnt perl for work related stuff in 1999-2000. Before that I had seen perl being used in shell scripting and CGI programs as a student. I had copies of Learning Perl and the perl CGI books. Perl was undisputed king of scripting and text processing.
As a programmer, I had looked at python and could not discern any obvious advantage in 2000-2004 period. Whatever python could do, perl could do more and had the vast CPAN repository. perl had more mind share, maybe also because of CPAN (People do not realize
Re: (Score:2)
TIOBE gets its data by searching for "$LANGUAGE programming" in various search engines, and applying some magical scaling factors.
It's complete nonsense and has no relationship to actual real world usage.
No. (Score:2)
hello, itâ(TM)s 2025 there? (Score:2)
#1 is now the programming language known as English. the code quality after the AI compiles it is equivalent to php 2 of lore
cheers
Switched to Python 25y ago - no regret... (Score:2)
I'd used Perl for years but switched to Python in 1999-2000.
It was very good move - no regret at all.
Sure the code is a bit longer but it is much more readable. When I am back after 6 months I still understand what I did in Python.
In Perl it is a challenge...
"Most popular" = "Worst" (Score:2)
Re: (Score:2)
You need the cheap beer to get down the McDonald's burger.
You don't want to waste good beer on that.
Re: (Score:2)
Re: (Score:2)
I like PERL (Score:2)
I'm not a programmer anymore, but I did write myself a little PERL program fairly recently, as the last thing I wrote. Classic text processing type stuff.
Rankings affected by AI use? (Score:2)
Since the rankings are based on Google searches that include the language name, it seems possible that AI use will skew the rankings. Those who use AI to assist them in writing code, might be less likely to do Google searches about it.
Perl is great! (Score:1)
I love Perls ability to run through text and and glean good data as well as reformatting it it etc. Getting the right modules for the code you just downloaded can be hell. They need a good 'pip' package manager (one of the few strengths of Python).
My latest example is a 30 line script to accept json messages on a topic, sort through the messages and spit them out on named topics whose names were derived from the elements in the messages. Easy Peasy!
I've done small programs to larger programs. It shines in
never left Perl (Score:1)
Re: (Score:2)
IMHO, Perl's biggest problem was that Larry didn't know how to say "no" to every crazy idea he saw.
My pet misfeature is "long statement that does something UNLESS condition". Yes, let's reverse the flow of cause and effect of the traditional "if" statement, what could possibly go wrong when someone tries to read your code?
Also protip: use HTML <p> to insert paragraph breaks on /.
Why is Visual Basic still on the list? (Score:2)
Riddle me this.
Why is Visual Basic still up there?
Is VBA still a BIG thing? I guessed it was still a thing but disappearing down its own DIM statement.
Or Visual Basic, part of Visual Studio? ... just why?
Re:Why is Visual Basic still on the list? (Score:5, Insightful)
I still use and like Perl (Score:2)
I still use and like Perl. Nowadays, I mostly use it for smallish scripts or medium-sized programs, but I have worked on three quite large systems written in Perl. It was fine. If you're a careful and disciplined programmer, you can write Perl that's just as readable as any other language.
The popularity of Python mystifies me. As a language, it's just... meh... it's OK. But the ecosystem is horrendous. Every time I upgrade to a new major version of Debian, Python scripts that use modules I installed
Why? (Score:2)
Why python perl (Score:2)
Perl 4 was great. Instead of all different versions of awk (awk, nawk, gawk), shell (some had functions, some didn't, bash wasn't everywhere nor was ksh. csh varied too!) on the different Unices, you had a tool that could work the same on all of them. Plus lots of modules. Perl 5 continued this
Eventually the Unices converged to Linux and the GNU versions of awk, shell, etc. And python came & caught up to Perl's modules. Perl got mired in Perl 6.
With python, there is an enforced style so everyone re
Still using Perl... (Score:2)
... though not exclusively. There are cases where making the choice between Perl and Python still has me leaning toward Perl. Perl was my first (non shell) interpreted language and it still feels like a comfortable pair of slippers.
I had to modify a Perl script written back in 2010 when the Govt recently decided to change the format of data I was reading via Perl. It took longer to figure out the change in the data than it did to modify the 15 year old Perl script.
Python is fine -- I really like the Arg
Skilled who? (Score:2)
We're not engineers.
We're software developers.
Unless they're only surveying engineers who happen to also code?
I've mostly transitioned to Go. (Score:2)
Perl was one of my go-to languages for the longest time, but where I always got lost was when a system grew too big. I'd start with 20-30 lines, grow and grow, and then just lose containment. Being careful about using unit testing to help drive appropriate encapsulation helped grow things a bit bigger, but systems just tended to reach the point where all my time was spent fixing cascading issues caused by trying to add a feature or fix a bug.
For awhile, I was using Go for the bigger projects, and that wor