This is a debate that has been going on since I started in the late 90ies.<p>You need some sort of logic in your views, no matter what system you use, i. e. loops or formatting dates.<p>Because people are raised on the &quot;don&#x27;t mix logic &amp; layout&quot; maxim, they feel dirty when they write sich logic in their usual language.<p>.. so they invent template languages...<p>... that then expand to be turing-complete and basically offer everything their primary language offered in the beginning.<p>So you end up with a new language to learn, which is usually clunky and ugly just for the bragging rights of &quot;not mixing logic &amp; views&quot;. Which is completely stupid. Views can (and almost always need) to contain some logic and the best language for that is the one you&#x27;re using everywhere else.