Ну вот тут же всё понятно —
Что тут непонятно?
newtype Reader e a = Reader (e -> a)
instance Functor (Reader e) where
fmap f (Reader g) = Reader (\x -> f (g x))
В этой строчке, (Reader g) просто паттерн-матчит какую-то стрелку e->a.
Ну а потом, применяет это вот f.
Типов тут мало проставлено, то несложно самому вывести.