Ross Paterson <r...@soi.city.ac.uk> wrote:

> Though one possibility that might get us most of the way there would
> be to refactor the Arrow class as
>
>   class PreArrow a where
>     premap :: (b -> b') -> a b' c -> a b c

Note that you are reinventing the 'profunctors' package here.  Every
arrow forms a profunctor with the following identities:

    lmap = flip (<<^)
    rmap = fmap

or alternatively:

    rmap = (^<<)


Greets,
Ertugrul

-- 
Not to be or to be and (not to be or to be and (not to be or to be and
(not to be or to be and ... that is the list monad.

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to