>> This is a side-effect of Tapestry's static structure approach. A >> component X embedded in the template of component Y is instantiated as >> an object attached to object Y. This instantiation happens once, at >> page load time. >> >> For X to be recursive (to contain an X), we would need to instantiate >> X and as part of that, instantiation another X to place inside the >> first X. To create the second X we need to instantiate a third X ... >> you can see where this goes. >> >> In theory, we could construct the component heirarchy for the page on >> an as-needed basis, but that might cause its own problems (including >> performance issues) and a while different set of lazy abstractions!
Ah.... I get it. So if I nest components A(B(C(D(E)))), and B(C(D(E))) Then tapestry builds the following components: A A.B A.B.C A.B.C.D A.B.C.D.E B B.C B.C.D B.C.D.E So while I've written only 5 components, I've instantiated 9, and A.B.C is a different component then B.C. Doing that lets you cache things more effectively. Pierce --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org