我正在尝试编写Ocaml幂函数,但出现错误。这是下面的代码。
let rec power x n =
if n = 0 then 1
else x * power (x n-1)
Error: This expression has type int
This is not a function; it cannot be applied.
答案 0 :(得分:1)
您对power
的递归调用没有正确地加上括号。您想要这个:
power x (n - 1)
您所拥有的解析为:power ((x n) - 1)
。换句话说,正如编译器告诉您的那样,它试图像使用函数一样应用x
。