Arrows that are also Functors

Maciej Marcin Piechotka uzytkownik2 at gmail.com
Tue Apr 26 19:50:10 CEST 2011


On Tue, 2011-04-19 at 23:48 -0400, Tyson Whitehead wrote:
> On April 19, 2011 23:22:12 Tyson Whitehead wrote:
> > ArrowLoop from MonadFix
> > 
> >   loop' f = fst' .' loop'' (f .' arr' (second snd))
> >     where loop'' f = mfix (\y -> f .' arr' (,y))
> 
> BTW haskellers, I've been wondering if mfix would better be defined as
> 
>   mfix' :: (m a -> m a) -> m a
> 
> where "mfix' f = mfix (f . pure)" for the computational monads.  The advantage 
> being you can give a useful definition for structural monads as well.
> 

What would be the difference with fix?

Regards
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/libraries/attachments/20110426/74f57b63/attachment.pgp>


More information about the Libraries mailing list