Per our phone conversation, can you add this info to the bug, and your
notes on what needed to be done to implement this, but, we are not
going to take this change at this time.
Instead, we will (in devildog) put the body of the mixin into an
include file and use that include to manually build the 'interstitial'
classes, as is proposed in http://jira.openlaszlo.org/jira/browse/LPP-5266
(see the bug for the proposed naming scheme for the interstitial
classes).
On 2008-01-23, at 09:36 EST, Philip Romanik wrote:
I have a version of the LFC running without traits. LzNode derives
from LzDataNode as well as the other changes you outlined.
Using <inittimer/> in a few apps shows no performance lost. There is
a lot of variability in the inittime so I cleared the cache and
closed/opened the browser before taking a few readings to average.
(msec) swf7 dhtml
original modified original modified
lzpix 1073 1077 1282 1297
amazon 2727 2778 3641 3657
comp. samp 2075 2090 2688 2672
contactlist 1436 1424 1516 1515
Can you think of some other performance measurements to try?
Thanks!
Phil
I wanted to add this to the bug, but Jira is out for now:
Expanding on that:
we want: LzMiniNode->LzDataElement(Trait)->LzNode->LzDataSet
Probably MiniNode/DataElementTrait/DataElement become a single
class DataNode.
On 2008-01-21, at 16:50 EST, Philip Romanik wrote:
> Sure. I'll let you know what I find
>
>
>
>> We just had a little brainstorm about how to get the data classes
>> working in swf9. Tucker can chime in here if I say something bogus
>> below, but here's my view of what to do:
>>
>> There's a problem right now because LzDataElement is implemented
>> using a "trait" to mix in some behavior, and we don't have traits
>> implemented in the compiler for swf9.
>>
>> The issue is that LzDataElement mixes in a class called
"LzDataNode",
>> and "LzMiniNode".
>>
>> There's a proposal to rearrange things a little in the base
classes
>> so that everyone inherits from LzDataNode.
>> So LzDataElement and other data classes would subclass LzDataNode,
>> and LzNode would also subclass LzDataNode. LzDataset could then
>> inherit from LzDataElement. We can get rid of LzMiniNode.
>>
>> <<http://www.openlaszlo.org/jira/browse/LPP-2736>http://www.openlaszlo.org/jira/browse/LPP-2736
>http://www.openlaszlo
>> .org/jira/browse/LPP-2736
>>
>> We wanted to do some kind of benchmarking before we commit to
this,
>> in case having this structure of classes somehow slows down data
>> performance. So if there were some way you could make this
change and
>> see if the code still works and if it doesn't slow down, then we
>> would proceed with this reorganization and then try to make the
code
>> compile cleanly in swf9/devildog.
>>