Add encoding of Haskell's Arrow