什么是浮动->;浮动是用OCaml表示的吗?
我有这个类型,它定义了一个表达式。我知道什么是浮动->;浮动是用OCaml表示的吗?,ocaml,ml,Ocaml,Ml,我有这个类型,它定义了一个表达式。我知道*符号允许我添加对,但是->用于什么 # type expression = Value of float | Sum of (expr*expr) | Subtraction of (expr*expr) | Fc1 of ((float->float)*expr) ->运算符用于函数类
*
符号允许我添加对,但是->
用于什么
# type expression = Value of float
| Sum of (expr*expr)
| Subtraction of (expr*expr)
| Fc1 of ((float->float)*expr)
->
运算符用于函数类型a->b
表示“a
in,b
out”,因此float->float
是一种函数类型,它将float作为参数,并生成一个float作为结果
那么
float->float->float
->
是右关联的,因此a->b->c
与a->(b->c)
相同,意思是一个函数接受a
并生成另一个b->c
类型的函数。像这样的函数通常用于模拟多参数函数(您可以使用fxy
将f
应用于x
,然后将结果函数应用于y
,从而有效地调用具有两个参数的内部函数),作为元组的替代方法。这种模拟多参数函数的方法称为currying。关于float->float->float
?