Re: Aspect Modelling and wide interfaces

From: Richard MacDonald <macdonaldrj_at_worldnet.att.net>
Date: Mon, 24 Jun 2002 04:50:52 GMT
Message-ID: <Xns9236F39CA3808macdonaldrjworldneta_at_204.127.36.1>


Clifford Heath <cjh_nospam_at_managesoft.com> wrote in news:3D167AC3.14A0FE4C_at_managesoft.com:

> Richard MacDonald wrote:

>> Probably the answer is yes, but you're being quite vague so I can't
>> say for sure :-)

>
> Yes, somewhat deliberately so :-). I don't have time yet to engage in
> a full-scale defense of my thinking, so I'm just putting out feelers
> to find people with whom to correspond.

Fair enough.  

>> Have you looked at COM?

>
> Used it extensively. Certainly supports many of the required
> externals, but you have to jump through hoops sometimes.

"Sometimes"? Name one situation where you don't have to jump through hoops :-?

> I'm trying to
> work out what type of programming language features you'd need to
> provide aspect isolation at the implementation level.

Ok. I'm not a deep language guy, although I've done my share of metastudies  in Smalltalk -- I've dynamically replaced the MethodDictionary, and a friend did this *and* solved the "problem of self".  

>> Personally, I would look to AOP when dealing with "internal"
>> implementation consolidations, such as logging, persistence, etc. I
>> would not look to AOP when dealing with multiple "facets" that a
>> client could see. 

>
> I think the AOP community are nearly all subscribing to this cop-out.
> The argument about "internal" features is a way of saying "we don't
> know how to isolate aspects of behaviour, so we'll disallow observable
> (external) behaviours for aspects". To my mind, AOP is nearly useless
> if if can't solve this fundamental problem.

Not sure I follow. I consider the
multiple/observable/external/distinct/behavior problem essentially solved via the Mediator or Role. It can be a PITA, but its solved without exponential complexity. Now the "internal" behaviors, such as logging and persistence -- well, that is a very hard problem in comparison.

Note: I'm basing this on the standard OO idea of making the client interfaces simple, meaning the complexity has to be moved "inside" the object. So internal behavior is much more complicated than external behavior.

>
> I have a model for a language that can isolate aspects at the
> implementation level, but it requires a novel approach to lifecycle
> management and I'm not sure I have the right model for that yet.

Well, post away. Do you really feel that you cannot post incomplete ideas and provide a "full-scale defense"? I have no problem discussing halfbaked  ideas, since I'm sure they're not stupid. A thick skin is all that is required :-) Received on Mon Jun 24 2002 - 06:50:52 CEST

Original text of this message