The primitives

A platform is what it gives you for free, and what it gives you here is four coordinates: where a thing is, what it is, when the world moved, and what work is worth doing. Place, Entity, Event, Process. Three of them are passive — they hold, they never act — and the fourth is the doing one.

They are the floor beneath the model, and the division of labour between the two is worth stating before you read either. These pages say what each primitive is, and — at least as importantly — what it is not. How you write software over them is the model’s business, and where a sentence here would start to become a programming lesson it links there instead.

Content-blindness is the law under all four

The platform reads structure and never meaning. It knows a place contains entities, their names, their origins and the commits it holds them at; it knows nothing whatever of what is inside them. It knows an act deposited a noun; it cannot tell you what the noun means. It carries an occurrence’s envelope and never its significance.

That is not modesty. It is the only arrangement in which a stranger’s program composes with state it has never seen — the interpretation lives one floor up, in the application, where it was always going to live anyway. Every “not” on the pages below is some version of this sentence.

Two of them are Git, and one deliberately is not

Place and Entity are Git repositories with an ontology laid over them, and the mapping goes all the way down to the command: an instance is a branch, an action is a commit, federation is push and fetch. What that buys is versioning, forking, attribution and distribution as substrate properties rather than as features somebody designs — and it is why the DAG tricks that agent frameworks reinvent one at a time are a degenerate case of what Git already does.

Event is the one that could not come from there, because Git has no clock that means now. A branch answers in which history; an event answers at what moment the world moved. Both are real coordinates, and neither substitutes for the other — you can replay a timeline forever and never learn that the hour struck.

Process is the fourth and the only unbuilt one designed: no binary, no verb, no line on this site you can copy. It is here because the floor is incomplete without a doing-primitive, and because what it refuses is as much of the design as what it offers.

  • Place WHERE: a directory declared a space, whose branches are time.
  • Entity WHO and WHAT: one named thing of your ontology, physically one Git repository.
  • Event WHEN the world moved: one occurrence, published by a source, delivered to whoever subscribed.
  • Process The unit of value: vertices are actors, edges are actions. Designed, not built.