[Prev][Next][Index][Thread]

Re: Distributed objects vs. generic functions and multi-methods



on 17/10/01 1:24 pm, Scott McKay at swm@mediaone.net wrote:

> What's the actual book title and author?

"JavaSpaces(tm): Principles, Patterns and Practices"
Eric Freeman et al

http://www.amazon.com/exec/obidos/ASIN/0201309556/qid=1003322112/sr=8-2/ref=
sr_8_3_2/102-3322930-8268135

> It's not actually the multi-methods that are the sole problem.  It's that
> in languages like Java, you have a natural "unit" for distributing around
> the network -- the class.
> 
> In Lisp and Dylan, there is no such in-language unit.

Well, Lisp Conses could be distributed: the head and the tail would be
either local objects or remote objects, "NetConses". This may be a little
fine-grained, though. :-)

> So in addition to
> little twists like GF/multi-methods, there's the issue of, what exactly do
> you distribute?

I see. Java's ability to send bytecodes 'down the wire' hides the fact that
functionality is distributed and stays there for the duration of processing
whether it's installed by hand or fetched from a server, but data is
processed and returned. Unless self-modifying Lisp code is the data being
distributed. 

I do think that for Dylan that if you don't use spaces you end up
concentrating on data objects for distribution, using the Objective-C proxy
& call object model.

- Rob.



References: