loopCompF, loopThroughBothF

Plumbing: circular connections


loopCompF :: F (Either (Either a b) (Either c d)) (Either (Either c e) (Either a f)) -> F (Either b d) (Either e f)
loopThroughBothF :: F (Either a b) (Either c d) -> F (Either c e) (Either a f) -> F (Either b e) (Either d f)


loopCompF is a symmetric version of loopCompThroughRightF. When applied to a parallel composition of two fudgets it allows the fudgets to communicate both with the outside world and with each other.


  loopThroughBothSP sp1 sp2 = loopCompSP (sp1 >+< sp2)

See Also

Other loop combinators: loopCompThroughRightF et al.

Other combinators that operate on parallel compositions: serCompRightToLeftF et al.

The corresponding stream processor combinator: loopCompSP.

Parallel composition of fudgets: >+<


There should be an illustrative diagram.