Fri Jan 10 01:01:37 EST 2014
Delay lines, commitation of implementation and structural transformation
Delay lines are structural shortcuts. Meaning, they are intrinsically
different. Is there a way to generalize this concept, i.e. straighten
it out, removing the loops?
Commutation of structural transformations.
Commutation is such an interesting crutch. It is the embellishment of
an implementation hack. If you can abstract the thing that needs a
hack in a clean transformation, you can get away with limiting the
iteractions of the hack.
suppose s represents and ordinary feedback system, and s' is a
specification of a delay line system. The map
D : s' -> s
Represents the _conceptual_ part: a delay line is a generator of a
large system with pass-through delays.
Then an interpretation / implementation of such a system is optimized
if there is a commutation between the implementation map I and the
delay map D.
I (D s') -> D' (I s) or I D ~ D' I
Note that D does not have to be equal to D'.
Maybe it's time to switch back to Haskell for a while to flesh this
- don't ever perform unnecessary unpacking: keep high level operations
on the high level.
- hack: re-abstract unnecessary unpacking?