On Tue, Aug 30, 2011 at 9:42 AM, Conal Elliott <co...@conal.net> wrote: > I suspect this definition is what Sebastian meant by "converting back and forth to ordinary lists".
Yep, I know; and technically it violates 'fmap id' == 'id' for example, fmap id (FList $ \xs -> xs ++ xs) = FList $ \xs -> xs If you add this FList law, though, you're OK: runFList fl as = runFList fl [] ++ as But, yes, this definition of fmap converts back to an ordinary list representation. -- ryan
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe