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.
>>


Reply via email to