Safe Haskell | None |
---|

- data T a b = Cons {}
- consChecked :: (Read a, Read b) => String -> a -> b -> T a b
- consShorten :: (Transform a, Transform b) => a -> b -> T a b
- arrowFirst :: Arrow arrow => arrow a b -> arrow (T a c) (T b c)
- arrowSecond :: Arrow arrow => arrow a b -> arrow (T c a) (T c b)
- arrowFirstShorten :: (Arrow arrow, Transform b, Transform c) => arrow a b -> arrow (T a c) (T b c)
- arrowSecondShorten :: (Arrow arrow, Transform b, Transform c) => arrow a b -> arrow (T c a) (T c b)
- arrowFanout :: Arrow arrow => arrow a b -> arrow a c -> arrow a (T b c)
- arrowSplit :: Arrow arrow => arrow a c -> arrow b d -> arrow (T a b) (T c d)

# Documentation

Parallel combination of two signals of equal length.

consChecked :: (Read a, Read b) => String -> a -> b -> T a bSource

Zip together two signals. It is a checked error if their lengths differ.

consShorten :: (Transform a, Transform b) => a -> b -> T a bSource

Zip together two signals and shorten them to the length of the shorter one.

arrowFirst :: Arrow arrow => arrow a b -> arrow (T a c) (T b c)Source

arrowSecond :: Arrow arrow => arrow a b -> arrow (T c a) (T c b)Source

arrowFirstShorten :: (Arrow arrow, Transform b, Transform c) => arrow a b -> arrow (T a c) (T b c)Source

arrowSecondShorten :: (Arrow arrow, Transform b, Transform c) => arrow a b -> arrow (T c a) (T c b)Source

arrowFanout :: Arrow arrow => arrow a b -> arrow a c -> arrow a (T b c)Source

arrowSplit :: Arrow arrow => arrow a c -> arrow b d -> arrow (T a b) (T c d)Source