Show HN: I Wrote a Book: Minimum Viable Perl
mvp.kablamo.orgNice work, I like it! It's like Learn X in Y Minutes, but with some more depth..
Thanks! Thats exactly what I was aiming for. I'm glad that came across. I was thinking the same thing although I didn't actually discover https://learnxinyminutes.com/docs/perl/ until after I had written Minimum Viable Perl.
Do people still use Perl? Why and where?
Yes, there are several legacy systems where a full rewrite is way more risky than maintenance-and-minor-enhancements-only. If you're surprised that Perl is still alive, don't go asking about how many COBOL systems are still out there!
I was more curious whether people are still using Perl on new projects and if so why they choose to do so.
This gets asked a fair amount on r/perl and on here. In short, because it's still a great language with yearly releases and a large library ecosystem (CPAN). It's built in to Linux and works really well there (although Python is as well), but also you can generally run 20 year old perl code in a 5.26 distribution of Perl without much issue. Performance is really good too. I'd say it's harder to learn than Python if you had to pick one, but if you're already good with Perl, there's really not a reason to go to Python unless you need to do numerical work (numpy/scypy) or data work (Pandas & Matplotlib). Perl has 3 good web frameworks. The language's base OO support is pretty sparse, but the Moose module on CPAN allows Perl to become supercharged with very advanced OO capabilities and the Moo module is a lightweight version of Moose that is a lower performance hit. Perl is much better than Python or Ruby for shell one-liners to do quick and dirty work as it has a lot of things built in to help there (see book Perl Oneliners). They spent 15 years designing Perl6 which is not the next language, but a new sister language that still has some work in the performance department, but is a very nice language. As a python guy, I would switch to Perl6 in a heartbeat if it were as fast as Perl5. A lot of things from Perl6 were backported to Perl5. All in all, y not choose it? It has a lot of neat developer tools as well.
> unless you need to do numerical work (numpy/scypy) or data work (Pandas & Matplotlib)
Perl has libraries for numerical/science stuff too. :)
http://search.cpan.org/dist/Math-GSL
Those are some of the major ones. Being Perl, of course there's more.
Bioperl is specific to biology/genomics to my knowledge although you could probably use it for other tasks. I'd use PDL if it had more use and support and was easier to setup, but it's a pain in that regard. I've tried installing it on windows via strawberry perl & activestate and won't be trying again after the 1/2 hour install repeatedly failed tests.