VMObjects for encapsulating object spaces [was:[Re: yet another smallest snapshot, and a visualization]]

Stephan Rudlof sr at evolgo.de
Sat Jan 21 13:43:38 UTC 2006


On 21.01.2006 09:02, Craig Latta wrote:
>...

>  > There are probably a few issues wrt. timers etc. but what I'd be
>  > curious about is whether such a VM could be used as a step towards a
>  > native multi-threaded version (e.g., run multiple versions of that VM
>  > to achieve concurrency)?
> 

> 	Sure. In fact, concurrent operation (but across many distinct machines) 
> is one of the things I plan to do with Spoon.

I like this idea!

Multiple image/VM combinations could be seen as VMObjects understanding
messages from other ones (communication between them seen as message
passing). And a cluster of them could be aggregated to a higher level
VMClusterObject running at a cluster controlling machine...

If there would be direct references to external objects (something like
squeak://somehost/vmProcessId/objectPointer), which had to be accessed
via message passing to another VM, the problem of VM spanning GC of
external objects would arise. But by encapsulating object spaces into
VMObjects (not allowing direct access to external objects inside them)
this problem could be avoided: resulting objects of messages to them
could just be newly created objects in the receiver VMObject (under
control of its GC).


Regards,
Stephan

PS: I think I should study the whitepapers about Croquet...

> 
> 
> -C
> 

-- 
Stephan Rudlof (sr at evolgo.de)
   "Genius doesn't work on an assembly line basis.
    You can't simply say, 'Today I will be brilliant.'"
    -- Kirk, "The Ultimate Computer", stardate 4731.3



More information about the Squeak-dev mailing list