in reply to Experiences With Mason

And if you cannot decide which templating framework is "best" (for various values of "best"), there is Template::Alloy.

From its docs:

Template::Alloy represents the mixing of features and capabilities from all of the major mini-language based template systems (support for non-mini-language based systems will happen eventually). With Template::Alloy you can use your favorite template interface and syntax and get features from each of the other major template systems. And Template::Alloy is fast - whether your using mod_perl, cgi, or running from the commandline. There is even Template::Alloy::XS for getting a little more speed when that is necessary.

CountZero

A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James