On Tue, Aug 30, 2011 at 9:42 AM, Conal Elliott <conal@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