[PD-dev] loadbang order

Mathieu Bouchard matju at artengine.ca
Thu Aug 11 00:13:13 CEST 2005


On Tue, 9 Aug 2005, Miller Puckette wrote:

> Loadbangs are "depth first", i.e., loadbangs in abstractions (and subpatches
> in general) go off before loadbangs in the parent.
>  This is so that abstactions can initialize themselves before receiving
> messages coming from other loadbangs.

That's not the usual definition of depth-first. You mean post-order.

Suppose you have a tree like this:

A
|-B
| |-C
| `-D
`-E
  |-F
  `-G

Then here are a few example enumerations:

a   depth-first post-order may be: C D B F G E A
a   depth-first  pre-order may be: A B C D E F G
a breadth-first post-order may be: C D F G B E A
a breadth-first  pre-order may be: A B E C D F G

... but there are several of each of those because the order of the
children of a node is not specified. (In this case there are eight
possible depth-first post-orders, for example)

Depth-first is enumeration that uses a stack (or recursion or special 
voodoo tricks).

Breadth-first is enumeration that uses a queue (or anything equivalent).

____________________________________________________________________
Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju
Freelance Digital Arts Engineer, Montréal QC Canada




More information about the Pd-dev mailing list