Slots unite variables and procedures into a single construct. This permits the inheritance hierarchy to take over the function of lexical scoping in conventional languages. Finally, because Self does not distinguish state from behavior, it narrows the gaps between ordinary objects, procedures, and closures. Self's simplicity and expressiveness offer new insights into object-oriented computation. The original tuple space, due to Gelernter.
Emphasis seems to have been entirely on communication between processes.
Added various things to C and the compiler dealt with arranging the calls to the tuple space. The Javaspaces project grew out of ideas from Linda. A simple service for cooperative computing. The first Jini service. Emphasis is on communications.