чистая поэзия
Prelude>
Prelude>
Prelude> :t fmap
fmap :: Functor f => (a -> b) -> f a -> f b
Prelude> :t fmap (*3)
fmap (*3) :: (Functor f, Num b) => f b -> f b
Prelude> :t fmap (*3) (+10)
fmap (*3) (+10) :: Num a => a -> a
Prelude> fmap (*3) (+10) 1
33
Prelude>
Prelude>
Prelude> :t fmap
fmap :: Functor f => (a -> b) -> f a -> f b
Prelude> :t fmap (*3)
fmap (*3) :: (Functor f, Num b) => f b -> f b
Prelude> :t fmap (*3) (+10)
fmap (*3) (+10) :: Num a => a -> a
Prelude> fmap (*3) (+10) 1
33
Prelude>