Apologies for not being clear - what I meant was you could segregate THINKING about the problem, and use both those modules in a single program.
in reply to Re^2: mapping dynamic fields to options
in thread mapping dynamic fields to options
GetOptions would process the option list, and Template would do the substitution.
From the looks of your requirements, the program implementing this would be quite small, and completely flexible.
"By three methods we may learn wisdom: First, by reflection, which is noblest; Second, by imitation, which is easiest; and third by experience, which is the bitterest."