我有以下代码:
let funcsAppliedToData data = funcs |> Seq.map (fun f -> f data)
是否有操作员表达括号中定义的功能(或者是整篇文章的整体编写方式)?
答案 0 :(得分:4)
您可以使用|>
运算符的部分函数应用程序重写此值。你有这个功能:
(fun f -> f data)
也可以使用管道运算符编写:
(fun f -> data |> f)
您可以将操作符视为函数:
(fun f -> (|>) data f)
现在你可以使用部分功能应用程序:
((|>) data)
这回答了你的问题,但我不认为我会在实践中使用它。明确地编写函数可能会延长几个字符,但我发现它更具可读性。管道操作员通常不会以上述方式使用,因此阅读代码的任何人基本上都必须扭转我在此描述的过程,以了解正在进行的操作。