avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicola Ken Barozzi <nicola...@apache.org>
Subject Re: Service as a first class types?
Date Wed, 28 Aug 2002 13:41:27 GMT
Peter Donald wrote:
> On Wed, 28 Aug 2002 23:16, Nicola Ken Barozzi wrote:
>>>No they are versioned java interfaces in most cases.
>>Hmmm... there is no imposition about this in Serviceable... hmmm...
> But every container sans Merlin enforces this.

Ah, ok.

>>Ah, ok, I like this.
>>The doclet stuff, huh?
>>I thought it was already there :-)
> It is - but it uses a custome mechanism. Unification may be possible but it 
> could also be a dose of everything looking like a nail ;)


>>But for this, I have the sense that it's overkill to get to this level,
>>to go down to /generic/ *method* attributes.
>>So I can have Component lifestyle, method lifestyle... it gets me dizzy...
> lifestyle is an aggregation and interpretation of attributes and should not 
> appear as one IMHO. 

Yeah, we are saying the same thing, maybe.

>>Now we are getting to a point in which the metadata describes the role,
> essentially.

I like it. Really.
It finally unifies all the ways a role is defined in one way.

>>1) use services via generic utility methods and loose strict type checking
> not really viable IMHO for programmer types like us ;) 


>>2) make the interface by hand, or the metadata by hand, or both, and
>>have a doclet-like system that keeps *both* in sync.
> Right - either quite insane or quite brilliant.



Whatever defines the role contract better, I like it.
But the devil is in the details, as always.

Can I dare? ;-)

I think that is we go down the metadata path, which is brilliant btw, we 
should stop referencing roles as interfaces.


A role, from a programmer's POV *is* the interface, and whatever 
language we use it will be used as such.

COM had a quite insane way of defining object access, because it didn't 
use the contract wisely, and had C programmers have more access than VB 
ones to the internals, but it did define a way for both to use COM.

A language doesn't even necessarily have to have interfaces to use COM, 
it uses a kinda reflection invocation.

Now, if we have ROLE=metadata, the corresponding interfaces used are 
just language *bindings* to the metadata, and *must* be generated 

This means that I can theoretically use cs stuff with java stuff via the 
metadata, which creates an interface for each language to access the 

So, it comes to the point that creating interfaces by hand is bad (TM).


Nicola Ken Barozzi                   nicolaken@apache.org
             - verba volant, scripta manent -
    (discussions get forgotten, just code remains)

To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>

View raw message