3 ms·
The OO part is actually one of the tiniest of changes. You can get basically the same thing in Perl 5 by using Moose. It has signature, and subsignature parsin
by b2gills 10y ago
The OO part is actually one of the tiniest of changes. You can get basically the same thing in Perl 5 by using Moose.
It has signature, and subsignature parsing, built-in concurrency, not to mention over a dozen other features that are not in Perl 5. The main reason it is called Perl 6 is how the project began. It started out as Perl 5 minus a few warts.
As someone who well versed in both, they are very similar, and very different at the same time.
I like to categorize the differences like this:
Perl 4 is to C, as Perl 5 is to C++, as Perl 6 is to Haskell,Scheme,C#,D,Go,BNF...
That is Perl 6 brings in features from many diverse programming languages, and combines them in such a way that it feels like they have always belonged together.
- cutler 10y agoPerl was my goto language for over 10 years but I lost my patience with the Perl6 for Christmas meme around 2013 by which time Ruby was a much better proposition. If the Perl5 community had finally found a way to adopt a MOP they might have had a chance of competing with Ruby and Python. I also feel Perl might have had better adoption in web development if the community had rallied round Mojolicious instead of Catalyst. Catalyst's routing via subroutine signatures is an abomination.
- dotandimet 10y agoCatalyst routing isn't via subroutine signatures, it's via attributes, which are similar to decorators in Python and Typescript/ES7+ and whatever other languages have them. Mojolicious is a much younger project than Catalyst, started by the original developer of Catalyst several years after he left the project, So the chronology doesn't work out - by the time Mojolicious showed up, Catalyst was already very well established as the serious Perl web framework. Although for devs who wandered back to Perl from Rails, Node, Python or elsewhere, Mojolicious has a lot to offer.