调用其参数的F#标准函数

Mik*_*kov 3 f#

可能是一个新手问题,但有一个标准的功能,如

let apply f = f()
Run Code Online (Sandbox Code Playgroud)

在F#?

Tom*_*cek 5

不,没有标准功能.

在大多数情况下,只是调用函数比使用函数更短,更明显apply,所以我不完全确定这将如何有用:

foo ()
apply foo
Run Code Online (Sandbox Code Playgroud)

现在,您也可以使用编写应用程序|>,但这也不是很好:

() |> foo
Run Code Online (Sandbox Code Playgroud)

我想唯一apply有用的地方是:

functions |> List.map apply
functions |> List.map (fun f -> f ()) 
Run Code Online (Sandbox Code Playgroud)

这里,没有apply更短的版本,但我不认为在这个用例中,在库中使用命名函数是不值得的.

你实际上可以使用|>这里来避免fun,这使得一个可爱的ASCII艺术作品:-),但不是我希望在我的代码库中看到的东西:

functions |> List.map ((|>) ()) 
Run Code Online (Sandbox Code Playgroud)