I think I should clarify a little further on my previous post. When you activate mod_perl on you SME box, Apache is running it system wide. Depending how you want to utilize mod_perl, you may need to configure apache further.
In a nutshell, mod_perl gives the developer the ability to both write apache modules in perl and cache perl scripts in memory as compiled code and them run them. Writing perl apache modules is essentially expanding the capabilities of apache (i.e, your perl code becomes in intergral part of the apache webserver). This is kind of the default setting for mod_perl and doesn't require any further configuration beyond activating mod_perl.
Running perl code under mod_perl as a cached scripts is a kind of a turbo charged CGI. This method of utilizing mod_perl requires that you make another "cgi-bin," so to speak, to store your mod_perl code (e.g., modperl-bin) When code is placed in the modperl-bin and then accessed, apache compiles it and keeps it in memory. This really speeds things up as after the first compile, all apache needs to do is run the compiled code from memory next time the script is accessed. The downside of cached scripts is they tend to be more resource intensive than mod_cgi scripts (i.e., standard cgi scripts) and require a more structured approach to develpment. If you make a mistake in your code or don't watch variable scoping, you can tank your web server.
Greg Zartman