I was able to map Functor\'s definition from category theory to Haskell\'s definition in the following way: since objects of Hask are types, the functor F
You're right, Applicative translates less straightforwardly than Functor or Monad. But in essence, it is the class of monoidal functors:
class Functor f => Monoidal f where
pureUnit :: f ()
fzip :: f a -> f b -> f (a,b)
From that you can define – within Hask –
pure x = fmap (const x) pureUnit
and
fs <*> xs = fmap (uncurry ($)) $ fzip fs xs
See this answer for a full proof that Applicative and Monoidal are really equivalent.