From: Rick Nooner Date: 2005-09-27T03:59:31+09:00 Subject: Re: Rinda frustration On Mon, Sep 26, 2005 at 09:49:41AM +0900, Mark Volkmann wrote: > I'm trying to determine what the methods "move" and "notify" do in the > Rinda class TupleSpace defined in lib/ruby/1.8/rinda/tuplespace.rb. I > don't see any mention of these in the articles I've found on Rinda. I > thought I could just look at the source and figure it out. Wrong! That > code is pretty complicated and is insufficiently commented in my > opinion. > > If anyone knows what those methods do, even if it's just a guess, I'd > love to hear it! I agree that Rinda isn't well documented. I have, however, been able to make extensive use of it for a distributed testing application. It is actually quite simple to use once you grasp the concepts. Rinda is based on the Linda Distributed Programming system developed in the 80's to ease the problems inherent in parallel programming on super computers. Since Rinda is really just a reimplementation of Linda, you can go to the much more comprehensive Linda documentation to get an idea of how things are suppose to work. A good place to start is http://suif.stanford.edu/papers/ppopp01.pdf Here is an exceprt that explains move: Two features are provided in FT-Linda to support atomic execution: atomic guarded statements and atomic tuple transfer primitives. Atomic guarded statements are used to execute sequences of TS operations atomically, potentially after block- ing; the atomic tuple transfer primitives move and copy allow collections of tuples to be moved or copied between tuple spaces atomically. If you read the entire paper, it goes into much greater detail. Go here for a post in comp.lang.ruby.general that goes into more details about both move and notify. http://permalink.gmane.org/gmane.comp.lang.ruby.general/114078 Rick -- Rick Nooner rick@nooner.net http://www.nooner.net