A program of the types T names, e.g. Program<{ state: State; model: Model; message: Message }>. The view
is not part of it: it lives in its own module, so it can be hot reloaded. runCommand is there exactly when
the program has commands, and subscriptions when it listens to something. makeModel turns a state into
what the view reads, and is a pure function of it: a test calls it as run does. A parent made of children
is made with parent.
A program of the types
Tnames, e.g.Program<{ state: State; model: Model; message: Message }>. The view is not part of it: it lives in its own module, so it can be hot reloaded.runCommandis there exactly when the program has commands, andsubscriptionswhen it listens to something.makeModelturns a state into what the view reads, and is a pure function of it: a test calls it asrundoes. A parent made of children is made withparent.