You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Scott Sanders <sa...@apache.org> on 2002/10/25 01:08:27 UTC

[clazz] Just a beginning...

All,

I took the liberty of creating the clazz proposal with my proposal generator (it worked great BTW).

I copied MethodUtils from BeanUtils as an initial class, but it does not have to stay there.

I copied in some of Stephen's proposal from commons-dev into the PROPOSAL.html.

Nothing is set in stone, feel free to change it all.  Just wanted to get something started that wasn't reorg email :)


-- 
Scott Sanders - sanders@apache.org

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Juozas Baliuka <ba...@centras.lt>.
<snip>

> Is this where the Avalon team's Delegator stuff would go?  If so, are you
> interested in it?
Yes, I think this code is usefull for new "reflection / dynamic code
generation"  project.
People need more powerfull "introspection" it can be in the same project.
I have some code to generate "standard" Beans/BeanInfo at runtime, It can
be usefull for scripting languages or "standard" reflection based
frameworks, if BCEL dependency is acceptable. It is some code to extend
classes at runtime(something like Proxy ).





--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Berin Loritsch <bl...@apache.org>.
Steve Downey wrote:
> Delegator is a bound method reference. Triggering the delegator causes a call 
> on a particular method on a particular object. The triggerer doesn't need to 
> be aware of either the object or the method.
> 
> There's also a variant that can delegate the call to many objects.
> 
> Berin said this was inspired by the C# construct, which means that it's 
> related to the Microsoft J++ extension. Anders Hejlsberg introduced it as 
> part of the framework he implemented. Anders was also the original architect 
> of Borland's Delphi. An interesting interview with him is here:
> 
> http://msdn.microsoft.com/library/en-us/dndevqa/html/msdn_andersh.asp
> 
> (I posted this before, when Berin proposed it)

Inspired by, but the mechanics are different.  Without the ability to change
the language we had to resort to Proxies and interfaces with one method to
describe the delegate.


-- 

"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


[clazz] Delegator [Re: [clazz] Just a beginning...]

Posted by Stephen Colebourne <sc...@btopenworld.com>.
I definitely consider this 'in scope'. It is a key part, and will have
multiple implementations

- Method + Object (simple reflection)
- Property object (Joda)
- own storage (non Class implementation, eg. ResultSet wrapper)

Stephen

From: "Steve Downey" <st...@netfolio.com>
Delegator is a bound method reference. Triggering the delegator causes a
call
on a particular method on a particular object. The triggerer doesn't need to
be aware of either the object or the method.

There's also a variant that can delegate the call to many objects.

Berin said this was inspired by the C# construct, which means that it's
related to the Microsoft J++ extension. Anders Hejlsberg introduced it as
part of the framework he implemented. Anders was also the original architect
of Borland's Delphi. An interesting interview with him is here:

http://msdn.microsoft.com/library/en-us/dndevqa/html/msdn_andersh.asp

(I posted this before, when Berin proposed it)

On Friday 25 October 2002 10:07 am, Dmitri Plotnikov wrote:
> Berin,
>
> Could you give us a synopsis of what Delegator is or a pointer to a doc
> where it is described.
>
> Thanks,
>
> - Dmitri
>
> --- Berin Loritsch <bl...@apache.org> wrote:
> > Scott Sanders wrote:
> > > All,
> > >
> > > I took the liberty of creating the clazz proposal with my proposal
> >
> > generator (it worked great BTW).
> >
> > > I copied MethodUtils from BeanUtils as an initial class, but it
> >
> > does not have to stay there.
> >
> > > I copied in some of Stephen's proposal from commons-dev into the
> >
> > PROPOSAL.html.
> >
> > > Nothing is set in stone, feel free to change it all.  Just wanted
> >
> > to get something started that wasn't reorg email :)
> >
> > Is this where the Avalon team's Delegator stuff would go?  If so, are
> > you
> > interested in it?
> >
> >
> >
> > --
> >
> > "They that give up essential liberty to obtain a little temporary
> > safety
> >   deserve neither liberty nor safety."
> >                  - Benjamin Franklin
> >
> >
> > --
> > To unsubscribe, e-mail:
> > <ma...@jakarta.apache.org>
> > For additional commands, e-mail:
> > <ma...@jakarta.apache.org>
>
> __________________________________________________
> Do you Yahoo!?
> Y! Web Hosting - Let the expert host your web site
> http://webhosting.yahoo.com/


--
To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
For additional commands, e-mail:
<ma...@jakarta.apache.org>



--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Steve Downey <st...@netfolio.com>.
Delegator is a bound method reference. Triggering the delegator causes a call 
on a particular method on a particular object. The triggerer doesn't need to 
be aware of either the object or the method.

There's also a variant that can delegate the call to many objects.

Berin said this was inspired by the C# construct, which means that it's 
related to the Microsoft J++ extension. Anders Hejlsberg introduced it as 
part of the framework he implemented. Anders was also the original architect 
of Borland's Delphi. An interesting interview with him is here:

http://msdn.microsoft.com/library/en-us/dndevqa/html/msdn_andersh.asp

(I posted this before, when Berin proposed it)

On Friday 25 October 2002 10:07 am, Dmitri Plotnikov wrote:
> Berin,
>
> Could you give us a synopsis of what Delegator is or a pointer to a doc
> where it is described.
>
> Thanks,
>
> - Dmitri
>
> --- Berin Loritsch <bl...@apache.org> wrote:
> > Scott Sanders wrote:
> > > All,
> > >
> > > I took the liberty of creating the clazz proposal with my proposal
> >
> > generator (it worked great BTW).
> >
> > > I copied MethodUtils from BeanUtils as an initial class, but it
> >
> > does not have to stay there.
> >
> > > I copied in some of Stephen's proposal from commons-dev into the
> >
> > PROPOSAL.html.
> >
> > > Nothing is set in stone, feel free to change it all.  Just wanted
> >
> > to get something started that wasn't reorg email :)
> >
> > Is this where the Avalon team's Delegator stuff would go?  If so, are
> > you
> > interested in it?
> >
> >
> >
> > --
> >
> > "They that give up essential liberty to obtain a little temporary
> > safety
> >   deserve neither liberty nor safety."
> >                  - Benjamin Franklin
> >
> >
> > --
> > To unsubscribe, e-mail:
> > <ma...@jakarta.apache.org>
> > For additional commands, e-mail:
> > <ma...@jakarta.apache.org>
>
> __________________________________________________
> Do you Yahoo!?
> Y! Web Hosting - Let the expert host your web site
> http://webhosting.yahoo.com/


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Dmitri Plotnikov <dp...@yahoo.com>.
Berin,

Could you give us a synopsis of what Delegator is or a pointer to a doc
where it is described.

Thanks,

- Dmitri


--- Berin Loritsch <bl...@apache.org> wrote:
> Scott Sanders wrote:
> > All,
> > 
> > I took the liberty of creating the clazz proposal with my proposal
> generator (it worked great BTW).
> > 
> > I copied MethodUtils from BeanUtils as an initial class, but it
> does not have to stay there.
> > 
> > I copied in some of Stephen's proposal from commons-dev into the
> PROPOSAL.html.
> > 
> > Nothing is set in stone, feel free to change it all.  Just wanted
> to get something started that wasn't reorg email :)
> 
> Is this where the Avalon team's Delegator stuff would go?  If so, are
> you
> interested in it?
> 
> 
> 
> -- 
> 
> "They that give up essential liberty to obtain a little temporary
> safety
>   deserve neither liberty nor safety."
>                  - Benjamin Franklin
> 
> 
> --
> To unsubscribe, e-mail:  
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
> <ma...@jakarta.apache.org>
> 


__________________________________________________
Do you Yahoo!?
Y! Web Hosting - Let the expert host your web site
http://webhosting.yahoo.com/

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Berin Loritsch <bl...@apache.org>.
Scott Sanders wrote:
> All,
> 
> I took the liberty of creating the clazz proposal with my proposal generator (it worked great BTW).
> 
> I copied MethodUtils from BeanUtils as an initial class, but it does not have to stay there.
> 
> I copied in some of Stephen's proposal from commons-dev into the PROPOSAL.html.
> 
> Nothing is set in stone, feel free to change it all.  Just wanted to get something started that wasn't reorg email :)

Is this where the Avalon team's Delegator stuff would go?  If so, are you
interested in it?



-- 

"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by robert burrell donkin <ro...@blueyonder.co.uk>.
On Sunday, October 27, 2002, at 09:03 PM, Stephen Colebourne wrote:

> From: "robert burrell donkin" <ro...@blueyonder.co.uk>
>>> I copied MethodUtils from BeanUtils as an initial class, but it does not
>>> have to stay there.
>>
>> i'd prefer that MethodUtils was relocated to lang rather than clazz. lang
>> has no dependencies and is unlikely to add any. lang is also a released
>> component so there's no problems about other released components 
>> depending
>> on it.
>>
>> i'd like to see the basic reflection functionality in lang with clazz
>> providing more advanced and sophisticated capabilities building on these
>> basics.
>
> Agreed. I've just deleted it, see also [lang] reflect package.

i have. nice work.

did my recent proposal slip under your radar?

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by Stephen Colebourne <sc...@btopenworld.com>.
From: "robert burrell donkin" <ro...@blueyonder.co.uk>
> > I copied MethodUtils from BeanUtils as an initial class, but it does not
> > have to stay there.
>
> i'd prefer that MethodUtils was relocated to lang rather than clazz. lang
> has no dependencies and is unlikely to add any. lang is also a released
> component so there's no problems about other released components depending
> on it.
>
> i'd like to see the basic reflection functionality in lang with clazz
> providing more advanced and sophisticated capabilities building on these
> basics.

Agreed. I've just deleted it, see also [lang] reflect package.

Stephen


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [clazz] Just a beginning...

Posted by robert burrell donkin <ro...@blueyonder.co.uk>.
On Friday, October 25, 2002, at 12:08 AM, Scott Sanders wrote:

<snip>

> I copied MethodUtils from BeanUtils as an initial class, but it does not 
> have to stay there.

i'd prefer that MethodUtils was relocated to lang rather than clazz. lang 
has no dependencies and is unlikely to add any. lang is also a released 
component so there's no problems about other released components depending 
on it.

i'd like to see the basic reflection functionality in lang with clazz 
providing more advanced and sophisticated capabilities building on these 
basics.

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>