Hi,

In the foldl library, the definition of Handler 
<http://hackage.haskell.org/package/foldl-1.2.0/docs/Control-Foldl.html#t:Handler>
 
is:

type Handler a b = forall x. (b -> Const 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Control-Applicative.html#t:Const>
 (Dual 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Dual>
 (Endo 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Endo> 
x)) 
b) -> a -> Const 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Control-Applicative.html#t:Const>
 (Dual 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Dual>
 (Endo 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Endo> 
x)) 
a


It resembles  the definition of a lens/traversal/fold, but what does the 
Dual 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Dual>
 (Endo 
<http://hackage.haskell.org/package/base-4.8.2.0/docs/Data-Monoid.html#t:Endo>
 x) part do?

-- 
You received this message because you are subscribed to the Google Groups 
"Haskell Pipes" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to haskell-pipes+unsubscr...@googlegroups.com.
To post to this group, send email to haskell-pipes@googlegroups.com.

Reply via email to