Catalyst is a ModelViewController framework for building RichInternetApplications using PerlLanguage.
Catalyst provides the ability to use your own preferred model, view and (to a less degree) controller tools within the application framework. The developers provide Catalyst 'plugins' that help integrate with major model and view tools, and there is some documentation on writing new plugins. The primary tutorial in the manual uses the DBIx::Class ORM with the TT templating and SQLite. There's a quite long list of plugins available (with documentation) at http://search.cpan.org/~jrockway/Catalyst-Manual/lib/Catalyst/Manual/Plugins.pod.
http://www.catalystframework.org/
http://www.perl.com/pub/a/2005/06/02/catalyst.html - excellent article written in cooperation with Catalyst's lead developer SebastianRiedel. He even shows how to code a wiki with Catalyst! And as a bonus, when you're logged in, you can ask any question about Catalyst.
Compare: MaypoleFramework (also Perl); RubyOnRails. See also: AjaxWebApplications.
Anyone interested in sharing his experience with Catalyst with us?
My first project in Catalyst was also a wiki, but I attempted diff-based history and didn't have any formatting except \n -> paragraph. The component architecture is difficult to understand, but mainly adds object-returning methods to $c. I didn't finish my wiki to be worth showing (the history is just a list of diff outputs) but I had fun writing it, and the system is fairly powerful.
At the time, I couldn't find a report generating tool as a component, or within TheCpan at large, which I would probably want for any business application. However, TemplateToolkit can provide PDF output from LaTex formatting, which sounds workable.