gpt4 book ai didi

function - 比较haskell中的函数和参数

转载 作者:行者123 更新时间:2023-12-02 09:11:59 26 4
gpt4 key购买 nike

Possible Duplicate:
Comparing functions in Haskell

我正在学习haskell,想知道这样的事情可能吗?我想要的只是比较参数“function”是否等于函数 a 或 b 之一。这个怎么做?

示例代码:

a,b :: Integer -> Integer
a x = x+1
b x = x-1

c function parameter = if function == a
then ... parameter -- Do a related stuff
else ... parameter -- Do b related stuff

最佳答案

据我所知,可以比较两个函数是否相等的唯一情况是它们的域具有有限数量的值。例如,如果您有两个类型的函数:

f, g :: Bool -> A

如果所有输入都相等,则它们相等:

f == g = (f False == g False) && (f True == g True)

但是,对于 Int 的情况,对 Int 的每个可能值进行比较是不切实际且低效的。对于Integer,这是无法完成的,因为Integer是无界的。

正如 @Miguel 在他的评论中正确指出的那样,具有非有限域的函数一般不能进行相等性比较。

关于function - 比较haskell中的函数和参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13215127/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com