AOP Compatibility

Garrett Smith dhtmlkitchen at gmail.com
Thu Feb 21 09:26:49 PST 2008


On Thu, Feb 21, 2008 at 7:47 AM, Neil Mix <nmix at pandora.com> wrote:
> Another thought: does ES4 provide enough introspection capability to
>  write proxy objects that wrap an immutable class instance?  It seems
>  as though it should be possible to create a single class (with *
>  getter/setter functions) that can wrap any object, emulate its
>  interface and provide AOP advice capabilities.  If this is indeed
>  possible, would that prove useful for the situations Kris is
>  concerned about?

This thread is useless without code.

>
>
>
>  On Feb 20, 2008, at 7:32 PM, Brendan Eich wrote:
>
>  > On Feb 20, 2008, at 4:21 PM, Kris Zyp wrote:
>  >> Of course a library function (like dojo.connect) that is called to
>  >> advise a
>  >> method on an object doesn't have control of how the object was
>  >> created. If
>  >> it is an instance of user class (and not dynamic), this function
>  >> will this
>  >> fail. This functionality is pretty core and heavily used by Dojo
>  >> and I
>  >> believe is used by other libraries as well. Of course existing code
>  >> will
>  >> continue to work, but it will be disappointing to find this
>  >> function fail
>  >> for new objects created with ES4 functionality. I don't know an
>  >> easier
>  >> solution, other than real AOP support.
>  >
>  > I think you're assuming a problem of the "Doctor, it hurts when I do
>  > this" variety. Non-dynamic classes are not for everything. Where you
>  > need them as integrity devices, you do not want Dojo's AOP, no way no
>  > how. Most objects will continue to be plain old Object instances. But
>  > note that even in today's world, DOM types are nominal -- there are
>  > non-dynamic classes under the hood. Not all DOM or similar browser
>  > embedding objects can be mutated freely. Dojo survives these hazards,
>  > as far as I know.
>  >
>  > /be
>  >
>  > _______________________________________________
>  > Es4-discuss mailing list
>  > Es4-discuss at mozilla.org
>  > https://mail.mozilla.org/listinfo/es4-discuss
>
>  _______________________________________________
>  Es4-discuss mailing list
>  Es4-discuss at mozilla.org
>  https://mail.mozilla.org/listinfo/es4-discuss
>



More information about the Es4-discuss mailing list