Раз оператор (<$>) infixl, то исходное выражение эквивалентно следующему:
(succ <$> succ) <$> "abc".
Следовательно (succ <$> succ) имеет тип (Char -> Char).
Следовательно вторая и первая функции succ в скобках имеют тип (Char -> Char).
Следовательно ответ: (Char -> Char) -> (Char -> Char) -> (Char -> Char).
Обратите внимание на
следующий instance:
instance Functor ((->) r) where
fmap = (.)