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:
.----------------------------------. .----------------------. | Machine 1 | | Machine 2 | | ========= | | ========= | | | | | | .--------------. .---------. .-. .-. | | | Vat A | | Vat B | | \______| \_ .------------. | | | .---. | | .-. | .-| / | / | | Vat C | | | | (Alice)----------->(Bob)----' '-' '-' | | .---. | | | | '---' | | '-' | | | '--->(Carol) | | | | \ | '----^----' | | | '---' | | | | V | | | | | | | | | .----. | | .-. .-. | .------. | | | | (Alfred) | '-------/ |______/ |____---( Carlos ) | | | | '----' | \ | \ | | '------' | | | | | '-' '-' '------------' | | '--------------' | | | | | | | '----------------------------------' '----------------------'
In the above diagram, you see:
Machine 1
and Machine 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
Machine 1
, and Vat C
is an event loop which lives on
Machine 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:
(machine (vat (actormap {refr: object-behavior})))
Next: Tutorial, Previous: Getting started, Up: Spritely Goblins [Contents][Index]