ref: 2fd27e0eebe1993daabf11bebd1f5438741b36c1
dir: /lib/Data/ZipList.hs/
module Data.ZipList(ZipList(..), getZipList) where import Prelude newtype ZipList a = ZipList [a] deriving (Eq, Ord, Show) getZipList :: forall a . ZipList a -> [a] getZipList (ZipList as) = as instance Functor ZipList where fmap f (ZipList as) = ZipList (map f as) instance Applicative ZipList where pure a = ZipList (repeat a) liftA2 f (ZipList xs) (ZipList ys) = ZipList (zipWith f xs ys)