A day with pure functions
42 :: Int
A day with pure functions
42 :: Int
map :: (a -> b) -> [a] -> [b]
filter :: (a -> Bool) -> [a] -> [a]
foldr :: (a -> b -> b) -> b -> [a] -> b
zip :: [a] -> [b] -> [(a,b)]
compose :: (b -> c) -> (a -> b) -> a -> c
class Functor f where
fmap :: (a -> b) -> f a -> f b
fmap id = id
fmap (f . g) = fmap f . fmap g
class Functor f => Applicative f where
pure :: a -> f a
(<*>) :: f (a -> b) -> f a -> f b
class Applicative m => Monad m where
(>>=) :: m a -> (a -> m b) -> m b
return :: a -> m a
value
Functor
Applicative
Monad
result
main :: IO ()
main = putStrLn "Hello, haskell.day"