2012-03-11 101 views
4

试图编写函数来计算列表项并返回带有数字的元组列表,我知道我可以用'zip'函数来完成它,但任务是用递归编写它:所以我得到“不能构造一个无限类型:a = [a]当概括类型为数字''时,我做错了什么?为什么Haskell抛出这个错误

numerize' :: [a] -> Int -> [(a, Int)] 
numerize' [] _ = [] 
numerize' [x] n = [(x, n)] 
numerize' [x:xs] n = (x, n) : numerize' xs (n + 1) 

感谢,所有最好的,重写器

+3

你不需要一案! – is7s 2012-03-11 13:38:33

+0

我不会使用术语“throw”来表示编译器错误。 “抛出”错误通常是指运行时异常。 – 2012-03-11 21:56:55

回答

8
[x:xs] 

应该

(x:xs) 
+0

哦!感谢这么愚蠢的错误:) – overwriter 2012-03-11 12:43:42

+1

+1为“bla bla”,简单的答案有时是最好的 – Kru 2012-03-11 12:45:08

相关问题