The models vocabulary provides basic support for dataflow programming. A model is an observable value. Changing a model's value notifies other objects which depend on the model automatically, and models may depend on each other's values.

The class of models:

Creating models:
<model> ( value -- model )

Adding and removing connections:
add-connection ( observer model -- )

remove-connection ( observer model -- )

Generic word called on model connections when the model value changes:
model-changed ( model observer -- )

When using models which are not associated with controls (or when unit testing controls), you must activate and deactivate models manually:
activate-model ( model -- )

deactivate-model ( model -- )

Implementing models
Arrow models
Product models
Range models
Delay models