On Monday, December 5, 2011 4:13:49 PM UTC-8, Pete F wrote:
>
> Is this global, rather than "types per service" angle the key then?
>
Yes.

Java types are defined in a global scope, but that global scope is not 
really "global" in the geographical sense.  It is a confined runtime 
environment established by classloaders.  A Java class named "foo.Bar" can 
have different definitions on different machines.

I try to expand that scope to the true global scope that covers the whole 
world.  Under such scope, we can use the same Java syntax to write 
programs, but every data type we define and reference to has a unique place 
in the world.  Two machines can 'see' the same definition of a type named 
"imop:example.com/foo.Bar", and only example.com can provide its 
definition.  In other words, the true global scope is established by 
everyone on the Internet, not your local configurations.
 

> Does it follow that you *must* then do the dynamic binding, rather
>
> than the latter being a good thing of itself?
>
Dynamic binding is only necessary when an unknown object is encountered at 
runtime.  For singleton objects whose type is known at compile time, it is 
indeed not necessary.

My current implementation bound both cases dynamically, but it is just a 
proof-of-concept version anyway ;-) I am working on rewriting the whole 
thing using Xtext and generate pure Java classes from Meso source code. 
 Dynamic binding will only be used when necessary.
 

> does
>
>  instanceof  imop:foo.com/IService
>
>  imply a round trip to the remote node (!!)  -or are you already
> sitting on a cache of type information (as you would be having
> consumed some wsdl)
>
Wsdl is like a description of a singleton object, so we can statically bind 
to any service described by wsdl.  But if we want our client program bind 
to an abstract service interface, a round trip to the remote node at 
runtime would be necessary since you haven't seen the concrete service at 
compile time.  If we put the returned service descriptor in a persistent 
cache with an indefinite TTL, than the actual round trip traffic is only 
needed once.
 

> Can't say I would want to pitch this stuff to Gilad Bracha ;-)
>
Well, I don't personally know him, but I would definitely love to have a 
chance to chat with him :-)


Stefan
 

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/javaposse/-/XJ7oxZ1nN78J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to