Sat Apr 3 15:43:25 CEST 2010
Dataflow and loops
A hand-waving remark. As mentioned in the comments here,
dataflow/reactive programming is hindered by the absence of loops.
This is maybe the biggest roadblock I face in trying to write down
some embedded language for DSP. However, for a synchronous dataflow
language this doesn't matter; it might be solved by simple source
transformations and combinators.
* Almost all the interesting algoritms in numerical computing are
iterative, computing a function by successive approximation,
i.e. as the steady state of some iterative dynamical system; with
or without state maintained from one evaluation to the next.
* For time-based algorithms resampling and block-based functions are
also a requirements. Both constraints add significant complexity
to ordinary functional data-flow based representation.
Any practically useful DSP language should solve those problems
properly, probably using combinators that transform "basic" dataflow
programs into iterated and or re-routed forms.