Haskell:这个函数的类型是什么?
mifun s = foldr op 0 s
where op x r = head x + r
有没有办法让 ghci 告诉我?
mifun s = foldr op 0 s
where op x r = head x + r
Is there a way to make ghci tell me?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试
:t mifun
(:type mifun
的缩写),它
为 So 提供了
b
的一个num
实例,mifun
获取b
的列表并输出单个b
(在本例中是列表的第一个元素的总和)。try
:t mifun
(short for:type mifun
)which gives
So, for a
b
an instance ofnum
,mifun
takes a list of lists ofb
and outputs a singleb
(which in this case is the sum of the first elements of the lists).这并不是真正的答案,但我需要格式化。
注意: 如果包含的任何列表为空,则
mifun
为 ⊥。例如:如果您希望上述示例的结果为 9(将空列表视为对总和没有贡献),那么您应该将 op 定义为以下方式之一:
我可能更喜欢第一种。
This isn't really an answer, but I needed the formatting.
N.B.:
mifun
is ⊥ if any of the contained lists is empty. For example:If you want the result of the above example to be 9 (treating an empty list as not contributing to the sum), then you should define op as one of the following ways:
I'd probably prefer the first.