Copyright | (c) Ivan Perez and Manuel Baerenz 2016 |
---|---|
License | BSD3 |
Maintainer | ivan.perez@keera.co.uk |
Safe Haskell | Safe-Inferred |
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 class VectorSpace
.
Orphan instances
(Monad m, VectorSpace v s, Eq s, Floating s) => VectorSpace (MSF m a v) s Source # | Vector-space instance for |