http://www.perlmonks.org?node_id=556075


in reply to Clarifications in subroutines, CGI.pm, HTML::Template and performance

You should definitely take a look at CGI::Application. Just create a Module with C::A as base, add your custom code to that module and then use this new module (eg. CGI::MyStdApp) as base for your CGIs.

You can even package your common CGI::MyStdApp with Module::Starter to get an easy to install code base, and more important, no duplicated (for every app) code base.

This OO approach is not very fast in a classical CGI environment, but runs with nearly no modification in mod_perl. In mod_perl, you can cache HTML::Templates. The bottleneck is here often firefox, not the perl script ;)