Perl 5.16.0 is out, with 590,000 lines of changes
nntp.perl.org
nntp.perl.org
Just thought I'd mention this in light of yesterday's discussion about simplicity/complexity: http://news.ycombinator.com/item?id=3995185
The result is something that may or may not be faster, or clearer . . . but it's a whole lot easier to debug when something goes wrong.
I learned Perl about a decade ago, and have never felt that plumbing its depths (references were about as sophisticated as I got) would pay off. (I won't get into what I think is broken about Perl, because that discussion definitely won't pay off :-) )
With the latest version of Padre, I find debugging Perl scripts to be as easy as C#.
Or you can use the commercial Komodo editor which has another high quality Perl debugger.
And if you want a copy of the announcement where the Unicode characters aren't broken, visit http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2012-...
* video of Pavel Vlasov talk - http://vimeo.com/42408505
* slides from talk - http://www.slideshare.net/fxzuz/perl-516-new-features
* conference link - http://perlmova.org/yr2012/
Stability, maturity, great backwards compatibility, whipuptitude, a sea of well-cared mature modules on CPAN, the ease and convience of CPAN itself, already installed/available everywhere, Unicode support, creativity and competence of the community, exceptionally good documentation, "the spirit", MOP via Moose if I want to, rarely gets in my way, scales very well in terms of "thinking" and "project" (everything from tiny admin-script up to full-blown financial district application possible), speed, amazing interesting features in perl 6....
And no, you don't write the same Perl as in 1996 anymore.
* extremely stable
* CPAN, a huge collection of community provided modules
* great modern OOP based web frameworks (Mojolicious, Dancer, Catalyst)
* very strong Windows scripting support (WMI, Win32, etc) and BSD and Linux support
* there are lots of Perl programmers out "there" to hire if I need them
* The language is actively improved and updated with new features, see the free PDF "Modern Perl": http://onyxneon.com/books/modern_perl/
In general, CPAN is a tremendous resource.
I'm also maintaining a legacy bioinformatics project with about 30,000 lines of Perl in it and still making expansions on it. I won't defend Perl as the best choice for that project other than to say I was around some very good Perl hackers / sysadmin types and I picked up the only tool with a knowledge well nearby. It did however make me a much better programmer, especially since I ended up implementing a lot of functions manually that I probably should have just found on CPAN or used as a built-in method in another language.
Perl is also really great when you are manually splitting data and jobs across a few thousand nodes and locally tweaking the run parameters for each job. Now that I've learned a few more languages I know that sort of thing might be better done with Hadoop but for a large GPFS system I rarely had problems.
I will say that for memory considerations (the main ceiling I bumped into on the old cluster) object-oriented Perl sucked and was very slow. If you wanted to roll your own pseudo-objects with well designed nested hashes though you could really wail.
Main choice of programming language is Perl. Firstly as I have more than 10 years of experience using it. And secondly as its a fantastic glue language. And of course CPAN. The modules I'm going to be using are indispensable - CGI::Application, Audio::Ecasound, POE, Net::LibLO, MIDI::ALSA and more. This is my first project where I'm going to be doing audio stuff and Perl has made the transition so easy!
I also use Perl for linguistics projects (text analysis, log processing, artificial intelligence, natural language processing, lots of regular expression). Many of our projects are more than 10.000 lines of Perl code.
I also have some personal projects (like my url shortener website www.bit.do) that were created with Perl.
My work tools are mainly Perl, Apache and Nginx web server and MySQL database.
https://github.com/kraih/mojo/wiki/Writing-websocket-chat-us...
Just added chat rooms and intranet user authentication. Then installed EV (for nodejs-grade event loop) from the CPAN, and the thing was deployed ready in production. Mojolicious is just amazing.
Perl is still the go-to language for tasks within its purview (as described by other commenters here).