The Perl interpreter has been regular updated and improved. There's a new release of Perl every six months, and the libraries on CPAN provide access to various other kinds of technology and tooling.
The Perl interpreter has been regular updated and improved. There's a new release of Perl every six months, and the libraries on CPAN provide access to various other kinds of technology and tooling.
And there's only one implementation. Doesn't seem very healthy.
Perl doesn't seem to have anyone making this kind of effort? You're stuck with the tech from decades ago.
This is a good thing, because it means that we don't have to worry about a program running on one implementation vs another.
Also, one of the things that Perl is great for (unlike many other scripting languages) is backwards compatibility. A program written in the 1990s for Perl 5.004 will probably run with minimal modifications on Perl v5.36.
That's the same for almost all languages though? Which major languages aren't open source or are owned by a company?
It is true it doesn't have a JIT, though.
Which bit was wrong? It has a basic bytecode VM - isn't that the 90s era interpreter tech I was talking about?
> It also uses reference counting, it does not have a GC.
Reference counting is GC.
So?
> And there's only one implementation. Doesn't seem very healthy.
LOL, okay, this is just hunting for complaints. I could list a half dozen languages that don't have multiple implementations (Rust, Java, Scala, C#, PHP, Go) and yet I've never seen anyone raise that as a concern.
That's because you're misinformed! These languages all have multiple implementations (Scala's is just multiple backends), so yeah people don't complain about it.
But hey, why not, I'll give you that one (tbh, I knew including Java on that list was a bit of a stretch).
Care to try with any of the others?
Wanna try to convince me, next, that HHVM qualifies as a reimplementation of PHP despite no one outside of Facebook using it?
But you know what, no, I have a different question: Why does this actually matter? You've positioned this as some sort of objective downside to Perl without explaining why anyone should care. So why don't we start there, rather than my taking your objection as being somehow relevant.
Please, explain to me: Why should I care that Perl (like so many other languages) only has one real implementation?
Because it fosters innovation. Perl isn't innovating as an implementation. Why's that bad? Because you don't get better performance or capabilities, and you're spending more to run it, and spending more to manage it.
> Care to try with any of the others?
For example Mono is a full clean-room implementation of .NET including C#.
> tbh, I knew including Java on that list was a bit of a stretch
Sure. Sure.