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