[PD] dsp in 1955

Tim Boykett tim at timesup.org
Mon Oct 23 13:40:27 CEST 2006


On Oct 21, 2006, at 1:47 PM, Mathieu Bouchard wrote:

>
> In a dataflow diagram, the arrow always means either one thread  
> talking to another via some pipe, or a function-call that does not  
> return a value. Pd messages are like the latter.

actually - no. well yes. sort of.

there are two kinds of diagram languages, as far as I can tell. Those
that are dataflow pushed from the top (i.e. "yes") and those that are  
pulling
(or should we say "sucking" because it sounds more icky?)
data from the bottom (therefore: "no" in the line above).

the top down ones can be explained as pipes or non returning function  
calls,
where the effect of the call is a side effect.

the bottom up idea (e.g. VVVV) is much more explicitly a functional  
language.
the system calls the objects that draw essentially asking for the  
next frame.
They then call the objects above them to get the latest data, and so  
it goes
up through the diagram. There are problems here, in particular it can be
hard to think about these ideas when one is used to the push method from
e.g. PD. But there are advantages. for instance when the right input  
of a *~ object
is zero, there is no need to call the entire subtree above the left  
(audio) input
so we save some CPU.

I am not sure whether such a pull system is any better than a push  
system. it
works well for video frames, I guess it could work for audio frames  
easily enough
but for asynchronous data flows (e.g. serial data, OSC packets) it  
can be a right
pain.

okay, 'nuff said.

tim




More information about the Pd-list mailing list