Tue May 4 16:40:55 EDT 2010

The Pure Data patch format

Starting out with the Pd data format as approaching some platonic
ideal, let's move towards finding a functional representation of that
platonic ideal.  Let's stick to the format of the abstraction as what
it's all about (dac~ and adc~ are top level special cases of outlet~
and inlet~).

An abstraction is:

   * A set of sub-processors that define the available inputs and

   * A set of connections that constrain the available inputs.

   * Input abstraction: promote some open input nodes to the next
     level / set other open input nodes to default.  (Bind all inputs
     as either abstraction inputs or constant inputs.)

   * Output abstraction: promote some output nodes to the next leve /
     ignore other output nodes.

Important observation: inputs and outputs are not symmetric.  Each
input (variable) can be bound/assigned-to only once, but can be used
multiple times.