remove definition of sequenceA for Reverse
authorRoss Paterson <ross@soi.city.ac.uk>
Sat, 5 Nov 2016 01:58:19 +0000 (01:58 +0000)
committerRoss Paterson <ross@soi.city.ac.uk>
Sat, 5 Nov 2016 01:58:19 +0000 (01:58 +0000)
(suggested by David Feuer) The default definition in terms of traverse
avoids an extra fmap, which may be expensive for some containers.

Data/Functor/Reverse.hs

index 98c0d6f..19196e6 100644 (file)
@@ -97,6 +97,3 @@ instance (Traversable f) => Traversable (Reverse f) where
     traverse f (Reverse t) =
         fmap Reverse . forwards $ traverse (Backwards . f) t
     {-# INLINE traverse #-}
-    sequenceA (Reverse t) =
-        fmap Reverse . forwards $ sequenceA (fmap Backwards t)
-    {-# INLINE sequenceA #-}