我正在学习如何使用Haskell和我遇到了一个路障,我花了一段时间来克服。它与对函数的递归调用有关,该函数计算任何给定Nat的整数平方根。我的问题不是代码本身,而是Haskell在为递归调用(或常规函数调用)获取参数时的行为。忽略了i+1调用,因为它只使用了"i“参数,完全忽略了"+1”部分,使函数无限期地循环。i = then i-1所以我的问题是(我知道问这个问题可能真的很愚蠢
我有一个帮助函数swap,它接收两个整数列表,并在将一个数字从另一个列表交换到其他列表后返回它们,所有列表中都有5个整数,所以如果有小于这个值的话,我将填充0。(a-1) snd = ints !!| otherwise = error "a and b must be either 1, 2 or 3"
此函数接受两个int和一个由3个int列表组成的列表,其中每个列表有5个整数,因此一个示例输入将是即使将其归结为
我想在D语言中实现来自Haskell的Maybe,只是为了它的地狱。这就是我到目前为止所得到的,但它并不是那么好。有什么想法可以改进它吗?class Maybe(a = int){ } //problem 1: works only with ints
else}data Maybe a = Nothing | Just a