
Check out Control.Lens on hackage. On 13/12/12 07:54, Gregory Guthrie wrote:
I found a nice idiom for a graph algorithm where the pairs of nodes representing links could be merged into node lists by something like:
ns = nub $ map fst g --head nodes
ne = nub $ map snd g -- tail nodes
And found a nicer approach:
(ns,ne) = (nub***nub) unzip g
Or perhaps:
(ns.ne) = bimap nub nub $ unzip g -- from Control.Bifunctor
The SO reference I saw described bimap as a way to map a function over a pair, and it seemed like a great match, but I cannot find the bimap function, and cabal reports no package Control.Bifunctor.
??
-------------------------------------------------------
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Tony Morris http://tmorris.net/