在F#中创建否定谓词

保罗

例如,我在F#中有一个谓词

let myFunc x y = x < y

有没有办法创建此函数的否定版本?

所以在功能上类似于

let otherFunc x y = x >= y

但是通过使用原始的myFunc?

let otherFunc = !myFunc  // not valid 
检查NAI

您尝试做的事情称为“功能组合”。查看f#的函数组合运算符:

我没有可用于实验的编译器,但您可以从

let otherFunc = myFunc >> not

并通过错误来解决问题。

编辑:马克斯·马卢克(Max Malook)指出,这不适用于的当前定义myFunc,因为它需要两个参数(在某种意义上,这是功能域)。因此,为了使这项工作有效,myFunc将需要更改为接受元组:

let myFunc (a, b) = a > b
let otherFunc = myFunc >> not
let what = otherFunc (3, 4)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在F#中创建否定谓词

来自分类Dev

F#和否定匹配

来自分类Dev

在飞行中创建谓词

来自分类Dev

无法在F#中创建列表文字

来自分类Dev

在F#中创建元组

来自分类Dev

在 F# 中从多维数组创建序列

来自分类Dev

Prolog中SAT解算器的否定谓词not / 2

来自分类Dev

如何在F#中的集群配置中创建actor

来自分类Dev

F#和C#中COM对象创建的区别

来自分类Dev

在C#中创建Winform dll并使用F#

来自分类Dev

如何在F#中创建COM对象

来自分类Dev

通过F#中的条件公式创建循环序列

来自分类Dev

无法在Windows Xamarin Studio中创建F#项目

来自分类Dev

如何在F#中创建结构的新实例?

来自分类Dev

如何在F#中创建uint32?

来自分类Dev

在F#中内联C#对象创建

来自分类Dev

如何在f#中创建地图副本?

来自分类Dev

在F#中为WinForms应用创建按钮处理程序

来自分类Dev

从f#中的期货合约创建小时仓位向量

来自分类Dev

F#和C#中COM对象创建的区别

来自分类Dev

在F#类中创建Queue <T>的数组

来自分类Dev

如何在F#中创建COM对象

来自分类Dev

如何在 F# 中创建可为空的列表?

来自分类Dev

在Java 8中创建通用谓词

来自分类Dev

如何在Prolog中创建双向谓词?

来自分类Dev

在coreData xcode iphone中创建复合谓词

来自分类Dev

F#中的阴影

来自分类Dev

F#中的DialogResult

来自分类Dev

Flow 中的假阳性谓词函数类型检查返回其参数否定的函数