<div dir="ltr"><a href="http://hackage.haskell.org/packages/archive/ListLike/3.1.4/doc/html/Data-ListLike.html">http://hackage.haskell.org/packages/archive/ListLike/3.1.4/doc/html/Data-ListLike.html</a><br><div><br></div><div style>
Peter</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 31 May 2013 11:16, mukesh tiwari <span dir="ltr"><<a href="mailto:mukeshtiwari.iiitm@gmail.com" target="_blank">mukeshtiwari.iiitm@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi Giacomo,<br></div>Data.List can be abstracted using Foldable and Traversable but unfortunately I could not find the functions corresponding to head, take.<br>
<br>Prelude Data.Traversable Data.Foldable> :t Data.Foldable.<br>
Data.Foldable.Foldable Data.Foldable.concatMap Data.Foldable.foldl' Data.Foldable.foldrM Data.Foldable.minimum Data.Foldable.sequenceA_<br>Data.Foldable.all Data.Foldable.elem Data.Foldable.foldl1 Data.Foldable.forM_ Data.Foldable.minimumBy Data.Foldable.sequence_<br>
Data.Foldable.and Data.Foldable.find Data.Foldable.foldlM Data.Foldable.for_ Data.Foldable.msum Data.Foldable.sum<br>Data.Foldable.any Data.Foldable.fold Data.Foldable.foldr Data.Foldable.mapM_ Data.Foldable.notElem Data.Foldable.toList<br>
Data.Foldable.asum Data.Foldable.foldMap Data.Foldable.foldr' Data.Foldable.maximum Data.Foldable.or Data.Foldable.traverse_<br>Data.Foldable.concat Data.Foldable.foldl Data.Foldable.foldr1 Data.Foldable.maximumBy Data.Foldable.product<br>
Prelude Data.Traversable Data.Foldable> :t Data.Traversable.<br>Data.Traversable.Traversable Data.Traversable.for Data.Traversable.mapAccumR Data.Traversable.sequenceA<br>Data.Traversable.fmapDefault Data.Traversable.forM Data.Traversable.mapM Data.Traversable.traverse<br>
Data.Traversable.foldMapDefault Data.Traversable.mapAccumL Data.Traversable.sequence<br>Prelude Data.Traversable Data.Foldable> :i Foldable <br>class Foldable t where<br> fold :: Data.Monoid.Monoid m => t m -> m<br>
foldMap :: Data.Monoid.Monoid m => (a -> m) -> t a -> m<br> Data.Foldable.foldr :: (a -> b -> b) -> b -> t a -> b<br> foldr' :: (a -> b -> b) -> b -> t a -> b<br> Data.Foldable.foldl :: (a -> b -> a) -> a -> t b -> a<br>
foldl' :: (a -> b -> a) -> a -> t b -> a<br> Data.Foldable.foldr1 :: (a -> a -> a) -> t a -> a<br> Data.Foldable.foldl1 :: (a -> a -> a) -> t a -> a<br> -- Defined in `Data.Foldable'<br>
instance Foldable [] -- Defined in `Data.Foldable'<br>instance Foldable Maybe -- Defined in `Data.Foldable'<br>Prelude Data.Traversable Data.Foldable> :i Tr<br>Traversable True<br>Prelude Data.Traversable Data.Foldable> :i Traversable <br>
class (Functor t, Foldable t) => Traversable t where<br> traverse ::<br> Control.Applicative.Applicative f => (a -> f b) -> t a -> f (t b)<br> sequenceA ::<br> Control.Applicative.Applicative f => t (f a) -> f (t a)<br>
Data.Traversable.mapM :: Monad m => (a -> m b) -> t a -> m (t b)<br> Data.Traversable.sequence :: Monad m => t (m a) -> m (t a)<br> -- Defined in `Data.Traversable'<br>instance Traversable [] -- Defined in `Data.Traversable'<br>
instance Traversable Maybe -- Defined in `Data.Traversable'<br>Prelude Data.Traversable Data.Foldable> :t foldMap<br>foldMap<br> :: (Foldable t, Data.Monoid.Monoid m) => (a -> m) -> t a -> m<span class="HOEnZb"><font color="#888888"><br>
<br></font></span></div><span class="HOEnZb"><font color="#888888">
-Mukesh<br></font></span></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div class="h5">On Fri, May 31, 2013 at 2:26 PM, Giacomo Tesio <span dir="ltr"><<a href="mailto:giacomo@tesio.it" target="_blank">giacomo@tesio.it</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">I'm looking for a class abstracting Data.List. I mean something that enable the use of say head, map, take and so on into different kind of types.<div>
<br></div><div>Is there already something like that?</div><span><font color="#888888">
<div><br></div><div><br></div><div>Giacomo</div></font></span></div>
<br></div></div><div class="im">_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org" target="_blank">Beginners@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/beginners" target="_blank">http://www.haskell.org/mailman/listinfo/beginners</a><br>
<br></div></blockquote></div><br></div>
<br>_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">Beginners@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/beginners" target="_blank">http://www.haskell.org/mailman/listinfo/beginners</a><br>
<br></blockquote></div><br></div>