我试图获得每个元素的长度,给定一个嵌套列表;我也想摆脱重复的长度。
例如,嵌套列表[[1],[1,2],[4..5]]
应该为我[1,2]
。
我可以通过nub (map length [[1],[1,2],[4..5]])
在互动中完成。但如果我用以下代码编写文件:
Import Data.List
getLen :: [[a]] ->[Int]
getLen xs = nub (map length xs)
我收到错误说:
“解析错误:顶层的裸体表达”
这个错误意味着什么,我该如何解决?
答案 0 :(得分:9)
简单更改:import
而非Import
。
答案 1 :(得分:2)
在解析器中,Import Data.List
看起来像数据构造函数Import
的应用程序,数据构造函数Data.List
作为参数。
由于在解析过程中发生了这个错误,编译器还没有发现数据构造函数Import
或Data.List
实际上都不存在,但它确实知道这样的表达式不允许顶级。
当然,在这种情况下,@ augustss指出这只是一个错字。