Haskell 中的模式匹配错误
error in patternmatching in Haskell
我正在编写一个函数,将布尔列表的列表以辱骂的方式映射到布尔列表中。这是我的代码:
y=[False| y<-[0..]]
encode :: [[Bool]] -> [Bool]
encode x:xs = (zip1 x y):True:True:(encode xs)
encode []=[]
zip1 函数只需要两个列表并将它们交替写入一个新列表。
我收到错误消息
Parse error in pattern: encode
为什么我会收到此错误消息?
函数应用的优先级高于:
因此,Haskell 解析
encode x:xs
作为
(encode x):xs
这毫无意义。你需要
encode (x:xs)
我正在编写一个函数,将布尔列表的列表以辱骂的方式映射到布尔列表中。这是我的代码:
y=[False| y<-[0..]]
encode :: [[Bool]] -> [Bool]
encode x:xs = (zip1 x y):True:True:(encode xs)
encode []=[]
zip1 函数只需要两个列表并将它们交替写入一个新列表。
我收到错误消息
Parse error in pattern: encode
为什么我会收到此错误消息?
函数应用的优先级高于:
因此,Haskell 解析
encode x:xs
作为
(encode x):xs
这毫无意义。你需要
encode (x:xs)