试图了解邮政编码

Car*_*ero -1 haskell functional-programming

我试图了解如何在Haskell中使用zip。我最近一直在学习Haskell,并试图从两个单独的列表中创建一个元组列表

我有以下几点:

createList :: [Char] -> [Char] -> [(Char,Char)]    
createList xs ys = zip(xs,ys)
Run Code Online (Sandbox Code Playgroud)

我知道zip应该创建给定两个列表的元组列表,但是出现以下错误:

Couldn't match expected type ‘[a0]’
              with actual type ‘([Char], [Char])’
Run Code Online (Sandbox Code Playgroud)

谁能向我解释我在哪里绊脚?

Mar*_*ann 6

Haskell函数调用不使用方括号或逗号。

您可以将createList函数编写为:

createList xs ys = zip xs ys
Run Code Online (Sandbox Code Playgroud)

或简单地

createList = zip
Run Code Online (Sandbox Code Playgroud)

因此,该createList功能是多余的;只是zip。我能想到的别名的唯一潜在用途是,如果您确实想约束给定的类型。