Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

rewrote the framework descriptions in an attempt to inform the reader…

… about meaningful distinctions and to guide their choice by suggesting uses for the various frameworks
  • Loading branch information...
commit b2a84f94591989afe3762db753595f563784a5a2 1 parent bf93c4d
@wchristian wchristian authored
Showing with 10 additions and 10 deletions.
  1. +10 −10 lib/perlfaq9.pod
20 lib/perlfaq9.pod
@@ -29,26 +29,26 @@ There are many Perl web frameworks, e.g. :
=item L<Catalyst>
Strongly object-oriented and fully-featured with a long development history and
-a large community and addon ecosystem. It has quite a steep learning curve.
+a large community and addon ecosystem. It is excellent for large and complex
+applications, where you have full control over the server.
=item L<Dancer>
Young and free of legacy weight, providing a lightweight and easy to learn API.
-Has a growing addon ecosystem. Strong dependency on global variables makes it
-unsuitable for large projects.
+Has a growing addon ecosystem. It is best used for small and tiny projects and
+very easy to learn for beginners.
=item L<Mojolicious>
-Young and free of any CPAN dependencies it provides compatibility with modern
-technologies like WebSockets. Strict dependence on pureperl reimplementations of
-CPAN modules makes it hard to use faster XS modules or reuse existing experience.
+Fairly young and focuses on HTML5 and real-time web technologies such as
+WebSockets. It is most useful when you don't have the desire or ability to use
+CPAN dependencies, or wish to employ innovative web technologies.
=item L<Web::Simple>
-Strongly object-oriented and intended as a toolkit for
-building micro web apps, custom frameworks or for tieing together existing
-Plack-compatible web applications with one central dispatcher. Uses lightweight
-OO library Moo and is also suitable for CGI deployment.
+Experimental, strongly object-oriented, built for speed and intended as a
+toolkit for building micro web apps, custom frameworks or for tieing together
+existing Plack-compatible web applications with one central dispatcher.

1 comment on commit b2a84f9


Discussed on #perl-faq already, but I'm not particularly happy with the mention of Dancer being "best used for small and tiny projects", as it carries the unwritten subtext of being unsuitable for anything beyond that.

Dancer's current implementation is somewhat limiting in some cases, hence the reason for Dancer 2 being close to completion (a complete re-write of Dancer's core, done properly, but still backwards compatible with Dancer's DSL), but I don't feel it's limiting enough that it means the current stable version of Dancer is no good beyond tiny apps.

Also, this mention means that, even after Dancer 2 has been released, anyone with a version of perl which included this perlfaq version will see Dancer being described as unsuitable for anything big, well after it has been replaced with a far more capable implementation.

Please sign in to comment.
Something went wrong with that request. Please try again.