我创建了一个自定义的列表类型,并尝试为它实现zip函数。但我无法理解它,它总是在最后一行抛出错误。
data List a = Empty | Cons a (List a) deriving (Eq, Ord, Show, Read)
listZip :: List a -> List a -> List a
listZip _ Empty = Empty
listZip Empty _ = Empty
listZip (Cons x1 (x2)) (Cons y1 (y2)) = Cons (Cons x1 y1) (listZip x2 y2)
1条答案
按热度按时间busg9geu1#
返回类型看起来不对,你可能想返回一个2元组的列表,所以:
或更一般的:
然后使用以下命令实现此操作:
这里我将
…
部分作为练习。