Forum OpenACS Improvement Proposals (TIPs): TIP#82 (Approved): Parse @var@ ADP variables in template tag attributes

ATS variables like @var@ can not be passed to attributes of ATS tags. Take <multiple name="foo" maxrows="@bar@"> for example.

Variable @foo@ does not get replaced by the value of $foo until after the >multiple<tag has been processed.

Bart has created a patch that replaces @foo@ variables with the value of the variable in template::get_attribute.

https://openacs.org/bugtracker/openacs/patch?patch_number=423

What, if any, are the performance implications of this change?
Approve on the assumption that the one extra regexp that existing pages would see doesn't incur a signficant performance hit.
Well, that's really one extra regexp per call to template::get_attribute. My guess is it doesn't add up to much, but it'd be good to test it.
It should happen at the point the template is compiled
so performance is just not a concern.

I worry it would break the form or list template templates
that undergo two rounds of compilation but if it
doesn't then I vote yes for this change.

I approve then.
Fine with me. Approved for 5.3
Unfortunately the patch does break list templates.
List values are displayed as

@datasource.elements(name)@

Hamilton,

Is it possible to fix the list template to escape the @ so it is not interpreted until the correct parsing step?