DemosCONTINUITY DEMO

The Robot Forgets. The Puppet Doesn't.

A robot's position is not something it decides; it is something that is true of it at a moment, and the moment passes. What the two robots here keep instead is the record of what they were asked to do and what they did about it — which is why one of them can be restarted and still owe what it owed.

The question

A moving host is the hardest case for the claim that a subject is not its machine. So: when the process driving a robot is gone and comes back, what exactly persisted?

The simulator has no collisions and no physics, which is why it serves: nothing here is a claim about robotics.

What the journal holds

Not the pose. The pose is labelled ephemeral in the entry's own header — it is read from the simulator, not stored. What is written down is the verb.

  • g.Assign(1, 9.8, 5.6) — the mission it was given, with its arguments.
  • g.Complete(1) — that it finished it.
  • define action 1 (id:int, x:double, y:double) as g.Assign(id, x, y) — the verb defined once, and invoked by reference after that.

On rehydration only the missions still open are dispatched again. The ones already closed are not repeated.

One robot tells the other

The interesting half is not the message. It is what the receiver writes down when it arrives.

  1. The sender records that it spoke: g.Announce(1); tell PointVisited with 1.8, 1.7 to blue once 'visited-' + 1;
  2. The acknowledgment comes back naming who answered: tell ack 'visited-1' from blue
  3. And the receiver records the receipt with a verb of its own — g.AssignTold(1.8, 1.7). Its journal does not say the point was visited. It says it was told.