Beware the software package classifications on Wikipedia.

It's curious that several of the "web application frameworks" listed are more accurately classified as "content management systems". Some do have pretty broad module support for customization, but that's not quite the same thing as being a general-purpose application framework. If PyLucid, MODx, PHPNuke, MediaWiki, Typo3, and DotNetNuke are application frameworks, then so are Everything, Slashcode, TWiki, KWiki, and the original Lucid of which PyLucid is a port (but which was mysteriously absent when I looked on the list).

Some of the entries listed are far more general than web application frameworks, and the web is only one possible target. Even PEAR is not web-specific, for example, even though the web is PHP's greatest strength. PEAR is more akin to CPAN than a single framework of any kind unless there's another PEAR for PHP (which would be entirely too confusing to ever catch on, I think). CherryPy is for Python web development, but it is more an entire environment than a simple framework as it includes the server in each application.

Packages like OpenLaszlo, Jifty, Catalyst, GWT, and Rails are not the same sort of thing as a CMS or a wiki. They give you tools to write your own type of application. Horde is both a web framework and the integrated suite of applications written using that framework. The Horde suite of existing applications is widely deployed. These are web application frameworks. I can write plugin modules for a CMS, wiki, bulletin board, or shopping cart all year and it's still only a web application framework in the loosest sense.

There are also some notable absences from that list. HaXe for instance is a language that targets web applications on the client side in JavaScript or Flash and can also target the neko VM. The Cheyenne web server includes support for REBOL server pages, an application container, a web API, database abstraction layer, automatic session management, and a localization framework -- all of which sounds like a pretty good crack at a "web application framework" to me. QuarterMaster is another web framework for REBOL, too. HaXe and REBOL may not be mainstream languages, but OpenLaszlo also defines its own language and REBOL, being a message-passing language, is very suited to web development.

I don't know whether or not any sort of editorial control was involved or if language proponents are stuffing as much into their categories as they can. What is clear is that through some combination of factors, some tools are underrepresented and others include what I would consider spurious listings.


In reply to Re: Is CGI::Application a wallflower? by mr_mischief
in thread Is CGI::Application a wallflower? by leocharre

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.