+++ /dev/null
-import "Prelude"\r
-\r
-// --- Signals ------------------------------------------------------\r
-\r
-data Signal =\r
- SigSum [Signal]\r
- | SigConst Double\r
- | SigNeg Signal\r
- | SigMul [Signal]\r
-\r
-deriving instance Eq Signal\r
-deriving instance Hashable Signal\r
-deriving instance Show Signal\r
-\r
-instance Additive Signal where\r
- zero = SigConst 0\r
- a + b = SigSum [a,b]\r
- sum l = SigSum l\r
-\r
-instance Ring Signal where\r
- one = SigConst 1\r
- neg a = SigNeg a\r
- fromInteger i = SigConst (fromInteger i)\r
- a * b = SigMul [a,b]\r
-\r
-/*\r
-instance Real Signal where\r
- fromDouble d = SigConst d\r
-*/\r
-\r
-main :: Signal\r
-main = 1 + 2 * 3 - 4 \r
---\r
-???
\ No newline at end of file