3 ms·
module Main where newtype Poly a = Poly [a] deriving (Eq, Show) instance Num a => Num (Poly a) where Poly a + Poly b = Poly $ addup a b where
by bojo 8y ago
module Main where
newtype Poly a = Poly [a] deriving (Eq, Show)
instance Num a => Num (Poly a) where
Poly a + Poly b = Poly $ addup a b
where
addup [] b = b
addup a [] = a
addup (a:as) (b:bs) = (a+b):(addup as bs)
main :: IO ()
main = print (Poly [1, 2] + Poly [10])
*Main> main
Poly [11,2]
Yep, you are correct.