Just thought of a metaphor: think of all the wires on the back of you
TV/Stereo stack ... the page acts like receiver, which internally
connects all the components (TV, VCR, DVD, Wii) together. The result
is a star-shaped graph, rather than a tesselation (i.e., imagine all
the wires if every piece had to have a cable to connect it to every
other piece!)

On Wed, Feb 11, 2009 at 10:27 AM, Howard Lewis Ship <hls...@gmail.com> wrote:
> I think of the page (really component) class as the "faciliator",
> between components in the template.
>
> Also note that the type safety issue goes beyond performance; it's
> also the gateway to optimizations and other features that rely on type
> and annotations.  A var: may change its type at different times, and
> will usually be null, making it hard to analyze statically.  We could
> add an annotation in the Java code to pin down the type of the var:
> ... but then its easier to use @Property.  I use @Property all over
> the place, I don't think I use var: very often at all.  The only
> situation that would make sense would be if I was iterating some
> objects and had a component to, for example, display the object
> properties.
>
> On Wed, Feb 11, 2009 at 3:15 AM, Thiago H. de Paula Figueiredo
> <thiag...@gmail.com> wrote:
>> On Wed, Feb 11, 2009 at 12:54 AM, Christian Edward Gruber
>> <cgru...@israfil.net> wrote:
>>> Hey Howard et. al.
>>
>> Hi!
>>
>>> <ol t:type="loop" t:source="listItems"
>>> t:value="${var:(com.foo.bar.blah.MyObject)listItem}">
>>>        <li>${var:listItem.name}</li>
>>> </ol>
>>
>> Notice you end up writing more code than you would using a @Property
>> and it is way more fragile, as you would need to provide a fully
>> qualified class name without IDE autocompletion and it is not
>> refactoring-safe. I don't think it is a good idea.
>>
>>> In other words, it would explicitly provide a cast-like syntax to allow the
>>> bytecode manipulation to be instructed with the type.  Now, I'm not 100%
>>> sure I think this is better than adding a single @Property private MyObject
>>> listItem in the code, but because this is truly a local variable for this
>>> iteration, it seems like having an instance variable is not appropriate for
>>> the purpose.
>>
>> If you think that the page class and the template are just to
>> different sides of the same thing (the page) and that the template is
>> not code, just a text template, having an instance variable is
>> appropriate. :)
>>
>> --
>> Thiago
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: dev-h...@tapestry.apache.org
>>
>>
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator Apache Tapestry and Apache HiveMind
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tapestry.apache.org
For additional commands, e-mail: dev-h...@tapestry.apache.org

Reply via email to