Extend Zippable class with tryZipWith
authorJoachim Breitner <mail@joachim-breitner.de>
Tue, 7 Oct 2008 13:41:28 +0000 (13:41 +0000)
committerJoachim Breitner <mail@joachim-breitner.de>
Tue, 7 Oct 2008 13:41:28 +0000 (13:41 +0000)
Data/Zippable.hs

index 9855352..42da099 100644 (file)
@@ -1,5 +1,7 @@
 module Data.Zippable where
 
 class Zippable k where
-  tryZip :: k Int -> k a -> Either String (k (Int,a))
+  tryZipWith :: (a -> b -> Either String c) ->  k a -> k b -> Either String (k c)
+  tryZip :: k a -> k b -> Either String (k (a,b))
+  tryZip = tryZipWith (\a b -> Right (a,b))