Advanced TALES syntax

TALES can't handle few cases that happen often and seem quire reasonable to do in templates.

It can't compare values:

  <option tal:repeat="opt options" tal:attributes="selected php:opt == selected_option"/>

It can't compute values conditionally:

  <tr tal:repeat="row rows" tal:attributes="class php:repeat.row.odd ? 'odd' : 'even'"/>

It can't pass arguments to functions:

  <h1 tal:content="php:substr(header, 0,100)"/>

Proposed syntax

FIXME