Re: Dynamic invocation vs. late/dynamic binding

James M Snell <[email protected]>
Newsgroups gmane.comp.web.services.ws-arch
Message-ID <OFC2B196B5.43E84ADD-ON88256CA7.0071A608-88256CA7.0072506B@us.ibm.com>
> Of course you can!  All you need in order to create an abstraction
> is commonality.  Can't you "meaningfully" treat brown cows and black
> cows as cows?

Not unless you *first* know: a) what "brown" is, b) what "black" is and c) 
what a "cow" is.  But I don't thing that's the point. It's easy to collect 
information about an object at runtime (e.g. what color the cow is, 
whether you're using a square vs. a circle, etc)... it's a completely 
different matter to assign *meaning* to that information.  E.g. what does 
it *mean* to get a brown cow vs. a black cow? 

- James Snell
     IBM Emerging Technologies
     [email protected]
     (559) 587-1233 (office)
     (700) 544-9035 (t/l)
     Programming Web Services With SOAP
         O'Reilly & Associates, ISBN 0596000952

     Have I not commanded you? Be strong and courageous. 
     Do not be terrified, do not be discouraged, for the Lord your 
     God will be with you whereever you go.    - Joshua 1:9

[email protected] wrote on 01/07/2003 12:30:16 PM:

> On Wed, Jan 08, 2003 at 01:21:22AM +0600, Sanjiva Weerawarana wrote:
> > > Late/dynamic binding means being able to manipulate squares and 
circles
> > > with the Shape interface.  Dynamic invocation means being able to
> > > construct, for example, a "displaySquare" message without 
compile-time
> > > knowledge of the full Square interface.
> >
> > That's fine - WSIF can handle that using something called JROM we
> > created (see alphaWorks again) to represent arbitrary schema typed
> > values.
> >
> > Clearly, in the absence of magic the information about the interface
> > (namely the data type defs) is needed at runtime at least (possibly
> > using xsi:type), so once that's available you're on easy street.

> That seems to be something very different than what I'm talking about.
> Sorry, I don't see how it relates.

> > > The former enables a client written to access Shape objects, to 
later
> > > access triangles, ovals, hexagons, you name it.  The latter doesn't.
> >
> > I guess we're back to the REST vs. WS debate; your program cannot
> > manipulate those shapes in a meaningful way without an understanding
> > of what an oval is vs. a square.

> Of course you can!  All you need in order to create an abstraction
> is commonality.  Can't you "meaningfully" treat brown cows and black
> cows as cows?

> Where's the disconnect here?  Surely you've used polymorphism before?
> (which, in case you were wondering, the Shape example isn't trying to
> demonstrate .. exactly)

> MB
> --
> Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
> Web architecture consulting, technical reports, evaluation & analysis
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.