I've given an example in an above reply. To be specific. The code layer is the perl layer. It is written in perl and is either modules or cgi script. The presentation layer is either a template file or a template string (yes template strings are useful too - so you can put your template in a database for instance). The code layer picks which template to display and gathers data that the presentation layer may need. But then it is up to the presentation layer to lay it out.
What you call a "code layer" sound like a dispatch mechanism... analogous to the controller if we were doing a webapp... but remember dynamic html generation doesnt need cgi/mod_perl at all. So yes, that would be in Perl. And the presentation layer for me, is also 100% pure Perl. And the "template" is a lifeless HTML file, preferably containing some div, class and id tags but nothing more.
Do you see anything suspect with the code I posted?