Next: Tutorial, Previous: Getting started, Up: Spritely Goblins [Contents][Index]
As a starting point, here’s a sketch of a network of Goblins objects wired to communicate with each other:
.----------------------------------. .----------------------. | Node 1 | | Node 2 | | ======= | | ====== | | | | | | .--------------. .---------. .-. .-. | | | Vat A | | Vat B | | \______| \_ .------------. | | | .---. | | .-. | .-| / | / | | Vat C | | | | (Alice)----------->(Bob)----' '-' '-' | | .---. | | | | '---' | | '-' | | | '--->(Carol) | | | | \ | '----^----' | | | '---' | | | | V | | | | | | | | | .----. | | .-. .-. | .------. | | | | (Alfred) | '-------/ |______/ |____---( Carlos ) | | | | '----' | \ | \ | | '------' | | | | | '-' '-' '------------' | | '--------------' | | | | | | | '----------------------------------' '----------------------'
In the above diagram, you see:
Node 1 and Node 2, running
separately from each other, but connected to each other over the
network via OCapN and CapTP.
Vat A and Vat B are event loops which live on
Node 1, and Vat C is an event loop which lives on
Node 2.
Alice and Alfred
live in Vat A, Bob lives in Vat B, and
Carol and Carlos live in Vat C. (While these
objects have human-like names, they’re just Goblins objects.)
Alice has references to both Alfred and
Bob. Bob has a reference to Carol.
Carlos has a reference to Bob.
Another way to think about this is via the following abstraction nesting dolls:
(node (vat (actormap {refr: object-behavior})))
Next: Tutorial, Previous: Getting started, Up: Spritely Goblins [Contents][Index]