In Template, Perl sections are controllable with a config param. So you can force all Perl code to be outside of template files. UhOh #1 goes away.
And by giving a nice mini-language, presentation logic can be encoded in the template, while data logic is traditionally coded in the Perl side, and carefully controlled. Yes, people blur it in both directions, but that's a style issue, not inherent in the design.
And to the comment that HTML::Template is cached under mod_perl, well, so is Template. {grin}
-- Randal L. Schwartz, Perl hacker