#4189: (<.>) operator (generalizing (.) to Functor)
-----------------------------+----------------------------------------------
Reporter: uzytkownik | Owner:
Type: proposal | Status: new
Priority: normal | Milestone:
Component: libraries/base | Version: 6.12.3
Resolution: | Keywords:
Testcase: | Blockedby:
Difficulty: | Os: Unknown/Multiple
Blocking: | Architecture: Unknown/Multiple
Failure: None/Unknown |
-----------------------------+----------------------------------------------
Comment(by uzytkownik):
Replying to [comment:4 uzytkownik]:
> Replying to [comment:1 malcolm.wall...@…]:
> > The type you have chosen for <.> is far from obvious. Why not
> > {{{
> > (<.>) :: (b->c) -> (a->b) -> f a -> f c
> > f <.> g = ((f . g) <$>)
> > }}}
> > for instance?
>
> I thought about more Cathegorical explanation. Functor F from A to B is
suppose to map category into other category. I.e. if category A = (O, M,
id, .) and B = (F(O), F(M), F(id), F(.)) then F(O) is solved on type
level, F(M) is done by fmap, F(id) is fmap id and F(.) is <.>
>
Please ignore this explanation.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4189#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs