You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
14 lines
442 B
Haskell
14 lines
442 B
Haskell
2 years ago
|
newtype CustomList a = CustomList [a] deriving Show
|
||
|
|
||
|
instance Functor CustomList where
|
||
|
fmap f (CustomList lst) = CustomList $ fmap f lst
|
||
|
|
||
|
instance Applicative CustomList where
|
||
|
pure x = CustomList $ repeat x
|
||
|
{-
|
||
|
-- default implementation
|
||
|
pure x = CustomList [x]
|
||
|
(CustomList fs) <*> (CustomList xs) = CustomList $ [f x | f <- fs, x <- xs]
|
||
|
-}
|
||
|
(CustomList fs) <*> (CustomList xs) = CustomList $ zipWith ($) fs xs
|