Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: HTML::Template Vs Template Toolkit

by sundialsvc4 (Abbot)
on Sep 24, 2012 at 12:57 UTC ( #995366=note: print w/ replies, xml ) Need Help??


in reply to HTML::Template Vs Template Toolkit

I personally believe that the main pragmatic issue, which lead to the development of more elaborate pure-templating languages such as TT, is that “the user interface is the one thing that is subject to the most Change For Change’s Own Sake.”   Say, by the marketing department.   The lead salesperson (who also happens to be the owner’s daughter ...) is worried about her commission, and she’s convinced that the reason why people aren’t buying is because the web-site doesn’t look like Competing_Site_X.   So what this means is that the presentation-layer of the site is going to change ... a lot ... frequently ... and for what are basically non-technical reasons.   And we all know what happens when the same code that does useful work keeps getting reworked ... code, like wrought iron, becomes more brittle the more you bend it.

TT compiles your template on-the-fly to Perl code and may cache that generated code on disk to avoid constant recompiling.   It has become very elaborate because it is designed to be arm’s length from the non-presentation side.

These are issues that you, as the designer, are going to have to Meditate upon.   There are many templating systems, and templating-system philosophies.   All of them are in-service and working as designed.   My preferences might be easy to guess from this, but I think that there is no bright-line rule.


Comment on Re: HTML::Template Vs Template Toolkit
Re^2: HTML::Template Vs Template Toolkit
by tobyink (Abbot) on Sep 26, 2012 at 13:58 UTC

    That's an argument for separating the "logic layer" from the "presentation layer", but not an argument specifically in favour of "template languages".

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://995366]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (6)
As of 2014-12-21 15:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (106 votes), past polls