Using templates is a good idea, but for marking up a Perl code template, I'd choose a syntax other than Text::Template's interpolation style, which requires a lot of back-slashing of braces and variable sigils. I think the templates would be easier to read if in the
syntaxes, both of which are equally easy to fill in.