Safe Haskell | None |
---|---|

Language | Haskell2010 |

`VectorSpace`

instances for `MSF`

s that produce vector spaces. This allows
you to use vector operators with `MSF`

s that output vectors, for example, you
can write:

msf1 :: MSF Input (Double, Double) -- defined however you want msf2 :: MSF Input (Double, Double) -- defined however you want msf3 :: MSF Input (Double, Double) msf3 = msf1 ^+^ msf2

instead of

msf3 = (msf1 &&& msf2) >>> arr (uncurry (^+^))

Instances are provided for the type classes `RModule`

and `VectorSpace`

.

# Orphan instances

(Monad m, VectorSpace v) => VectorSpace (MSF m a v) Source # | Vector-space instance for |

(Monad m, RModule v) => RModule (MSF m a v) Source # | R-module instance for |

type Groundring (MSF m a v) :: Type Source # |