<div dir="ltr"><div class="gmail_quote">On Fri, Aug 20, 2010 at 1:29 PM, Peter Gordon <span dir="ltr">&lt;<a href="mailto:peter@pg-consultants.com">peter@pg-consultants.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Just out of curiosity, what are the advantages of dancer over say<br>
catalyst and CGI::Application and countless others?<br></blockquote><div><br></div><div>Well, each of these frameworks caters to a certain crowd and has its own special flavor.</div><div><br></div><div>CGI::Application has a stage-like continuity that it tries to work with, which is built with CGI in mind from the start. This incurs possible design problems later on, IMHO.</div>

<div><br></div><div>Catalyst is really awesome and I love it, but it comes at a price. It&#39;s built mainly for serious web applications, trying to help you work through multiple layers and depth levels (which Reaction tries to take another step forward to) and has a lot of dependencies. This is very good in case you have a heavy application and your own servers where you control all the ins and outs.</div>

<div><br></div><div>Dancer on the other hand tries to express subtlety and simplicity (and as least dependencies as we can) while keeping as much strength as possible and not getting in your way. it&#39;s not complete MVC - which Catalyst is - and is very small and relatively minimalist. The idea is to get you up and running with a basic website (including several paths) within a minute from the time you installed it.</div>

<div><br></div><div>To host &quot;/&quot; you simply write:</div><div>get &#39;/&#39; =&gt; sub {</div><div>    # serving /</div><div>};</div><div><br></div><div>It was inspired by Sinatra and employs the &quot;routes&quot; concept.</div>

<div><br></div><div>It&#39;s also one of the first adapters of PSGI compatibility but retains HTTP::Server::Simple support as well. That means you can run either standalone (each instance is a full webserver as well and doesn&#39;t need helper scripts) or using Plack, Starman, Twiggy or any other PSGI compatible server - or even CGI/FastCGI through Apache or other webservers.</div>

</div></div>