Henry and I propose that we do the work to get our class system  
'right' now.

Henry has been looking at trying to merge LzNode and being stymied by  
the divergence between the SWF and JS class implementations.  Neither  
matches the prototype (with traits) that has been proposed.

As we see it the work will consist of:

1) The compiler translates

   new class(parameters)

to

   class.make(parameters)

2) Existing constructors (e.g. mvn()) become .initialize methods  
(which are called by .make)

3) Existing methods defined

   class.prototype.name = function

get changed to

   class.addProperty('name', function);

4) The compiler translates

   super.method(parameters)

to

   this.nextMethod(arguments.callee, 'method').call(this, parameters)

5) Remove .instanceOf (already deprecated, unused in LFC).

6) Remove .callInherited (already deprecated, used in DHTML)

7) Remove Object.class* (already deprecated, unused in LFC)

8) Remove Class.isExtendedBy (not deprecated, but only used by LzNode  
and can be incorporated into .make and .initialize)


_______________________________________________
Laszlo-dev mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-dev

Reply via email to