Proposal: add $> to Data.Functor
Herbert Valerio Riedel
hvr at gnu.org
Sun Dec 8 08:17:06 UTC 2013
On 2013-12-08 at 02:06:26 +0100, Ben Franksen wrote:
> Data.Functor has <$> and <$, but not $>, which should be a flipped version
> of <$, analogous to <*>, <*, and *> in Control.Applicative. I was astonished
> to see that Data.Functor doesn't have it so I had to write it myself. Then I
> looked on hackage and found it defined in comonad package (also re-exported
> from semigroupoids). One (seemingly unmaintained, last version Apr 2012)
> package named iterIO has it, too.
>
> infixl 4 $>
> -- | Replace the contents of a functor uniformly with a constant value.
> ($>) :: Functor f => f b -> a -> f a
> ($>) = flip (<$)
>
> I propose to add this to Data.Functor; mostly because I think users expect
> it there (again by analogy with Applicative), even though it is trivial to
> write (but then writing <$ is trivial, too).
fyi, this has been suggested a few months ago as part of
http://comments.gmane.org/gmane.comp.lang.haskell.libraries/18952
and as a matter of fact has been already implemented in base-4.7.0.0:
https://github.com/ghc/packages-base/blob/master/Data/Functor.hs#L36-L40
Cheers,
hvr
More information about the Libraries
mailing list