title: Why there isn't a Functor instance for Kleisli in Control.Arrow?
body: <p>While trying to familiarize myself with <a href="http://hackage.haskell.org/packages/archive/base/latest/doc/html/Control-Arrow.html" rel="noreferrer">Control.Arrow</a>, I have noticed that the <a href="http://hackage.haskell.org/packages/archive/base/latest/doc/html/Control-Arrow.html#t:Kleisli" rel="noreferrer">Kleisli</a> newtype would seem to admit a Functor instance, something like:</p>
  
  <pre><code>instance Monad m =&gt; Functor (Kleisli m a) where
      fmap f (Kleisli k) = Kleisli $ liftM f . k
  </code></pre>
  
  <p>Is there a reason why this instance isn't provided? Does it exist in some package as an orphan instance? </p>