Num -package:base-prelude -is:exact -package:linear-base package:dunai

Number instances for MSFs that produce numbers. This allows you to use numeric operators with MSFs that output numbers, for example, you can write:
msf1 :: MSF Input Double -- defined however you want
msf2 :: MSF Input Double -- defined however you want
msf3 :: MSF Input Double
msf3 = msf1 + msf2
instead of
msf3 = (msf1 &&& msf2) >>> arr (uncurry (+))
Instances are provided for the type classes Num, Fractional and Floating.