
4 Jun
2018
4 Jun
'18
11:36 p.m.
Current definion of (<|>) for ZipLists: ZipList xs <|> ZipList ys = ZipList (xs ++ drop (length xs) ys) doesn't work if the left argument is infinite. It should be: ZipList [] <|> ys = ys xs <|> ZipList [] = xs ZipList (x:xs) <|> ZipList (_:ys) = ZipList (x : (ZipList xs <|> ZipList ys))