Entity / Operators

The mental model

                Expr.operator(id, { input, output, … })
                    │                         │
        definedAs: an expression         no definedAs: primitive
                    │                         │
     every interpreter runs it        a table per interpreter
     (nothing to implement)           ├─ Operators.memory      (client, guards, invariants, forms)
                    │                 └─ DrizzleOperators.make (the server's SQL)
                    │                         │
                    └──────────┬──────────────┘
                               ▼
          bodies call it: where, order, a write's `compute`
                               │
             laws ── tested per implementation ──▶ evidence
                               │
                Operators.describe ──▶ what a server publishes

The equation that holds it together:

a body's meaning = the kernel's meaning + each operator's meaning

and an operator's meaning is either an expression (defined) or the agreement of its implementations (primitive), which Conformance checks.