Perl 5 and Perl 6


I use and love Perl. I haven’t been a full time developer for several years now, and have used half a dozen other languages, but Perl still feels the most natural and in tune with the way my mind works. Read into that how you will.

Which renders the current and seemingly-expanding schism between Perl 5 and 6 an that much more painful.

As the official project site takes great care to point out, Perl is a family of languages that include Perl 5 and 6. The former is the old one we know and love, warts and all. The latter is a reimplementation on the Parrot VM that fixes some of the perceived problems and arcane syntax.

There are technical considerations about running Perl 5 in a Perl 6 world, including implementing a package that would let 5 programs run on Parrot. But the larger issue in the community appears to be nomenclature.

Perl 6 detractors lament the version ceiling imposed on Perl 5. No matter how many further refinements or features are added to Perl 5, it will always sound more outdated than 6. How far along is Perl 5 going to end up, Perl 5.1023?

Advocates claim, with the backing of Larry Wall, that Perl 6 is most definitely a refinement of Perl 5; borne of its legacy, and necessarily the future of the language. They also assert, I hope it’s fair to say, that there’s room for both, even when retaining the name.

I can see merit in both sides, but probably lean slightly in favour of the Perl 5 camp. Not only because I have a vested interest in the language’s continued success, but that I think it also limits Perl 6’s wider use by people who hate the old Perl.

But maybe that’s the issue. Could 6 make it on its merits without the Perl name? I think it’s strong enough a language that it could, but it would be a needless battle if it does share so much with Perl 5.

Maybe the solution then is to do what Microsoft did with C++ and Visual Basic when they moved to .NET and drop the version number. People in the industry know Visual C++ .NET came out after 6.0, but the names don’t otherwise indicate one is better or newer than the other.

Or maybe, just maybe, I’m overthinking this again.

Author bio and support


Ruben Schade is a technical writer and infrastructure architect in Sydney, Australia who refers to himself in the third person. Hi!

The site is powered by Hugo, FreeBSD, and OpenZFS on OrionVM, everyone’s favourite bespoke cloud infrastructure provider.

If you found this post helpful or entertaining, you can shout me a coffee or send a comment. Thanks ☺️.