函数类型的顺序是什么:int -> int -> int -> int
What is the order of the function type : int -> int -> int -> int
函数类型的顺序是什么:int -> int -> int -> int?
我不太明白问题在问什么或从哪里开始找出答案。我似乎无法在任何地方找到任何关于 sml 的有用页面。
首先,ML 是一种函数式语言,因此如果您缺乏特定于 SML 的 material,您应该仍然能够从任何函数式语言参考资料中收集有用的信息。阅读有关一阶和高阶函数的信息应该会有所帮助。然而,这并不是真正的 ML(或 SML)问题,而是函数式编程问题。
请注意,我的功能知识可能生锈了:
如果一个函数的参数和结果值都是"data",则该函数是一阶的,也就是说,不是其他函数。如果一个函数以另一个函数作为参数或 returns 一个函数作为参数,则该函数是高阶的。
然后,高阶函数的阶数被定义为比其参数或 return 值的阶数多一。
函数类型int -> int描述了一个接受一个int并输出一个int的函数。因此,这是一阶函数,阶数为 1。
函数类型 int -> int -> int 描述了一个接受 int 并输出的函数 (a function takes an int and output an int), 例如我们可以重写
int -> int -> int
作为
int -> (int -> int)
所以采用 int 的函数的输出是另一个(一阶)函数,就像我之前描述的那样。
现在,我们知道参数 (int) 的顺序是 1(它只是数据,不是函数), output 的顺序(例如第一个order function int -> int) 也是 1,因此整个函数类型 int -> int -> int 的顺序因此是 1+1,例如2.
通过类似的扩展,函数类型的顺序如下
int -> int -> int -> int
是 3。
函数类型的顺序是什么:int -> int -> int -> int?
我不太明白问题在问什么或从哪里开始找出答案。我似乎无法在任何地方找到任何关于 sml 的有用页面。
首先,ML 是一种函数式语言,因此如果您缺乏特定于 SML 的 material,您应该仍然能够从任何函数式语言参考资料中收集有用的信息。阅读有关一阶和高阶函数的信息应该会有所帮助。然而,这并不是真正的 ML(或 SML)问题,而是函数式编程问题。
请注意,我的功能知识可能生锈了:
如果一个函数的参数和结果值都是"data",则该函数是一阶的,也就是说,不是其他函数。如果一个函数以另一个函数作为参数或 returns 一个函数作为参数,则该函数是高阶的。
然后,高阶函数的阶数被定义为比其参数或 return 值的阶数多一。
函数类型int -> int描述了一个接受一个int并输出一个int的函数。因此,这是一阶函数,阶数为 1。
函数类型 int -> int -> int 描述了一个接受 int 并输出的函数 (a function takes an int and output an int), 例如我们可以重写
int -> int -> int
作为
int -> (int -> int)
所以采用 int 的函数的输出是另一个(一阶)函数,就像我之前描述的那样。
现在,我们知道参数 (int) 的顺序是 1(它只是数据,不是函数), output 的顺序(例如第一个order function int -> int) 也是 1,因此整个函数类型 int -> int -> int 的顺序因此是 1+1,例如2.
通过类似的扩展,函数类型的顺序如下
int -> int -> int -> int
是 3。