Perl is more viable for web development than ever!

Today on StackOverflow, an old thread popped up that prompted me to answer. That answer became a slightly longer compendium of recent developments in Perl and Perl-for-web.

I will copy the text here, but I am asking you to vote it up so that it will show for future viewers. So that I will not be getting undue points, I have made it community wiki (also means you can amend if you want).

Vote here:

== Post Content ==

This is an old question, but I thought I should update the readers. I am happy to report that in my opinion Perl is more viable for web development than ever! Along with old friends Catalyst and (recently revamped) Mason, there are some great new entries Mojolicious (or visit and Dancer. I’m sure there are others too.

Perhaps the biggest improvement is PSGI/Plack (or visit

PSGI is an interface between Perl web applications and web servers, and Plack is a Perl module and toolkit that contains PSGI middleware, helpers and adapters to web servers.

With these improvements have come more cloud hosting platforms: for a couple examples read more here.

Perl itself is experiencing a renaissance of sorts. Between Moose object framework (and lighter clones like Mouse) and the ideals of the Modern Perl movement (readability while using modern best practices), Perl seems to be growing and its users are excited and motivated.

Personally I have been enjoying Mojolicious. I like its built-in servers and templating engine. I also like that you can make a Mojolicious::Lite application in a single file! That said I really haven’t played with Dancer or other frameworks, so if you are coming back to Perl or new to Perl, I would encourage you to take a look at those too.

In closing Perl-for-web has come a long way since If you’ve been away for a while, its worth another look.


Sadly with Mojo you’re encouraging the use of something that represents the anti-CPAN. :(

vs. Catalyst, the “all of CPAN”? ;-)

I thought that slap-fight was over.

Dancer can also be a single file. In fact, the default in exporting Dancer is to provide an internal webserver for single file applications. This is compatible with the original purpose of Dancer, which is porting Ruby’s Sinatra (which does the same thing).

If you’ll check structured Dancer code, you’ll see it’s export as “use Dancer ‘:syntax’” which means “hey, I just want the syntax, not the internal webserver”.

Good job. :)

Maybe someone should tell these guys: or even these guys to stop using in their examples

What would be great (although I don’t think I would be the best person to do this ) is a “Why you should consider Perl for your next (web) project” - Here in Chile there is a program called Startup Chile, attracting tech start-ups to Chile. One of the things I noticed is that on their jobs page, they have had the same job postings for PHP and Ruby programmers for months now.

modern alternatives to the old standards

I’m interested in this. Could you point these out or maybe even make a blog post about them, detailing how they improved on the old standards?

I very much agree that the new simple frameworks such as Dancer and DBIx::Class are really giving Perl a renaissance.

I am very impressed with Dancer.

Leave a comment

About Joel Berger

user-pic As I delve into the deeper Perl magic I like to share what I can.