【发布时间】:2019-03-06 05:45:26
【问题描述】:
我试图弄清楚元组在 Haskell 中是如何工作的,以及如何从元组中获取某些数据值。
我有以下代码,它运行正常,并打印出我期望的元组输出:
test :: Integer -> (Integer, Integer)
test c = function(1, c)
但是,当我尝试从元组中获取第一个值时,如下所示,
test :: Integer -> Integer
test c = fst function(1, c)
我收到以下错误
- 无法将预期类型 '((Integer, Integer) -> Integer, b0)' 与实际类型 '(Integer, Integer) -> (Integer, Integer)' 匹配
任何帮助或建议将不胜感激。提前致谢。
【问题讨论】:
-
Test不能是函数的名称。函数名称以小写字母开头。 -
哦,抱歉,我使用的是小写函数,为了举例,我只是将其更改为“测试”。