[stringtemplate-interest] accept simple expression language
DVD
dvd at newfoundmarket.com
Mon May 11 20:06:49 PDT 2009
Hi, Terence,
Customization might not be the correct wording.
I understand ST enforces the separation. But I wonder if an option
could be provided when really needed for scenarios that
the authors either do not know Java or do not have easy means
to add property to model. In my example, the visitor would be allowed
to create their own template for their own web page and they would be
presented properties available from the model (a and be here).
if the user requires a value of c = a+b to be display in the web page,
then
there would not be easy way to do this.
Perhaps some mechanism and built-in (and localled developed) expression
handler
could be provided so that authors could use somethinf like
$handler_add(O.a+O.b)$ where "handler" would be a special label
indicating to the ST engine that this is a expression processor to call
the provided expression handler.
This is not a frequently used feature but I feel this would prevent any
showstopper when
needed. Otherwise, I would have to use another template system just for
this purpose.
I know this could "pollute" the clean design of ST but I feel it would
be worth it to make it
all-around player with a slight compromise. Remember it took Sun so
many years to
give up the marketing of safe String class to provide the
StringBuilder class :-)
Regards
Terence Parr wrote:
> Hi. Addition or other computation on model values is forbidden in the
> view to avoid entangling model/view. You really need to compute in
> the model and pass in some how. Adding numbers isn't "customization"
> though as you ask about...it's an entanglement to be avoided :)
>
> Ter
> On May 10, 2009, at 12:58 PM, DVD wrote:
>
>> Hello:
>>
>> I experimented with ST and really like use it for all my projects
>> replacing freemarker.
>> The only thing I feel uncertain is that ST does not provide an option
>> to allow using a simple expression langauge for template author for
>> customization without
>> requiring model developer to provide the needed data. For example,
>> if originally the template is like
>>
>> $O.a$$O.b$
>>
>> but a user wants to have only value c = summing a and b, something
>> like
>> $O.a+O.b$
>>
>> I guess in order to get this, model dev has to add property "c" in O in
>> order for author
>> to get. This is a big problem if an application expects authors to
>> import their own templates,
>> since the authors would have no way to customize it, even for some
>> simple operation.
>> Renderer might not help so I am not sure if there is any solution for
>> this scenario. I went through
>> the doc but did not have an example.
>>
>> Thanks
>>
>> _______________________________________________
>> stringtemplate-interest mailing list
>> stringtemplate-interest at antlr.org
>> http://www.antlr.org/mailman/listinfo/stringtemplate-interest
>
More information about the stringtemplate-interest
mailing list