标准机器学习中的结构比较

2024-03-11

我似乎找不到关于为什么这不起作用的参考:

- (2000,1)<(2000,1);    
stdIn:18.1-18.18 Error: operator and operand don't agree [overload]
  operator domain: 'Z * 'Z
  operand:         (int * int) * (int * int)
  in expression:
    (2000,1) < (2000,1)

标准机器学习是否支持结构比较?


简短的回答:只是为了平等。

顶级环境中的严格小于运算符 ('a).

对于整数的情况Int.<使用函数,它只接受两个整数作为参数

- Int.<;
val it = fn : int * int -> bool

然而对于相等,情况有点不同,从相等运算符的类型可以看出

- op=;
val it = fn : ''a * ''a -> bool

这里可以看到多态类型是bee''a,注意双拼。这是因为它只能实例化为相等类型(例如 int、string、int'string 等)。请注意,real 不是相等类型!

Update

我通常做的事情是为我创建的每个(数据)类型创建一个比较函数。这样我就可以完全控制发生的事情。比较函数的想法是返回一个order http://www.standardml.org/Basis/general.html#SIG%3aGENERAL.order%3aTY

datatype order = LESS | EQUAL | GREATER

有了这个,您可以轻松地创建一个 case 表达式并执行适当的操作,而不是if .. < .. then .. else ..

Update1

下面的代码来自 Andreas Rossberg 的评论。我把它放在这里是为了方便阅读

fun comparePair compareA compareB ((a1, b1), (a2, b2)) =
    case compareA (a1, a2) of
      EQUAL => compareB (b1, b2)
    | other => other

以及一些使用示例

- comparePair Int.compare String.compare ((2, "foo"), (3, "bar"));
val it = LESS : order
- comparePair Int.compare String.compare ((3, "bar"), (3, "bar"));
val it = EQUAL : order
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

标准机器学习中的结构比较 的相关文章

  • 如何在 Mac 上安装 Standard ML 的工作版本?

    我使用的是 Mac OSX 10 7 5 但我似乎无法下载可用的 REPL 的标准 ML 编译器 这应该有这么难吗 我应该下载一个最好的 ML 吗 我尝试过 SML NJ 和 MLton 但没有成功 Mac 用户也可以使用 brew ins
  • 如何在 SML/NJ 中进行按位与运算?

    我正在编写的程序需要它 重复平方来计算 x n 我似乎找不到它的语法 或者是否支持它 它们可在Word8 and Word结构 let open Word8 infix andb orb xorb notb lt lt gt gt gt g
  • 何时使用 `<>` 和 `!=` 运算符?

    找不到太多这方面的信息 尝试比较两个值 但它们不能相等 就我而言 它们可以 并且经常是 大于或小于 我应该使用 if a lt gt b dostuff or if a b dostuff 这一页说它们相似 这意味着它们至少有一些不同之处
  • SML 类型推断的提示

    我是 SML 的新手 我正在尝试练习 SML 类型参考 我正在尝试演绎以下类型 a fun add42 x x 42 b fun comp F G let fun C x G F x in C end c fun compA42 x com
  • 避免代码重复的最佳方法是定义比较运算符“<、<=、>、>=、==、!=”,但要考虑 NaN?

    我数学 x lt y相当于 x gt y 对于浮点运算来说也是如此 在多数情况下 但不总是 什么时候x or y是 NaN x lt y is not相当于 x gt y 因为比较NaN任何事物总会有回报false 但仍然 x lt y l
  • 通过索引变量访问 SML 元组

    问题很简单 如何在SML中使用索引变量访问元组 val index 5 val tuple1 1 2 3 4 5 6 7 8 9 10 val correctValue index tuple1 我希望有人能够提供帮助 提前致谢 不存在接受
  • 记录列表上的SML功能

    我试图声明一个函数 该函数将元组内的记录列表作为参数 但语法并不像我希望的那样直观 这就是我想做的 type Player id int privateStack int list fun foo id x xs Player player
  • fn 类型的 ml 函数:'a -> 'b

    功能 fn a gt b 现在 有没有可以定义并具有这种类型的函数 标准机器学习中该函数签名有两种可能的实现 一种使用异常 另一种使用递归 val raises a gt b fn a gt raise Fail some error In
  • 三路比较运算符成员与非成员实现

    如果出现以下情况 双向比较运算符应该是非成员函数 您希望第一个操作数的类型不是此类 您想要对两个操作数中的任何一个进行隐式类型转换 新的 C 20 三路比较运算符具有对称生成规则 表达式的名称查找a b where 是双向比较运算符 按顺序
  • Objective C 中的惰性数据类型

    在 SML 中 可以采用以下方式对惰性编程进行建模 Have a datatype to wrap a computation datatype a susp Susp of unit gt a A function to hold the
  • 标准机器学习中的部分总和?

    我是函数式编程的新手 我有一项任务来计算列表的部分和 例如 psum 1 1 1 1 1 val it 1 2 3 4 5 整数列表 这是到目前为止我的代码 然而 在函数 psum2 L 中 我不知道如何遍历每个值并将它们相加 所以我只是打
  • 标准机器学习语法

    我是标准机器学习的新手 并尝试编写以下代码 fun whilestat test stmt1 fn x gt if test x then stmt1 x whilestat test stmt1 else x 问题是它给了我以下错误 w
  • 有类似 Haskell/ML 的 C 编译器吗?

    People have http jlongster com software iphone scheme iphone example 书面games http www artisancoder com 2009 10 scheme hi
  • 比较匹配器在混合数字类型上失败

    在普通 Scala 中 以下断言通过 assert 1D gt 0F assert 1F gt 0 assert 1L gt 0 assert 1 gt 0 toShort assert 1 toShort gt 0 toChar 然而 S
  • 读取 SML 中的命令行参数

    我正在尝试读取输入文件的名称 argv 1 这是我到目前为止所做的 val args CommandLine arguments val x y args val agora x 但我不断收到此错误消息 uncaught exception
  • 使用 SML 和 HOL 推理规则从第一原理证明定理

    我正在尝试证明这个定理 p q lt gt q p thm将 SML 与 HOL 推理规则结合使用 这是 SML 代码 val thm1 ASSUME p bool q bool val thm2 ASSUME p bool val thm
  • 为什么迭代器使用“!=”而不是“<”?

    我习惯这样写循环 for std size t index 0 index lt foo size index Do stuff with foo index 但是当我在其他人的代码中看到迭代器循环时 它们看起来像这样 for Foo It
  • 解决 SML/NJ 编译管理器中的库冲突

    我正在使用 SML NJ 110 79 其中包括对 Successor ML 项目定义的新结构的支持 其中 Fn https github com SMLFamily BasisLibrary wiki 2015 005 Addition
  • 要统一的类型变量出现在类型中

    我有一个函数可以从两个列表重建一棵树 我返回所有分支的列表 但收到一个我不明白的错误 但我认为这与返回类型有关 错误是这样的 Can t unify a with a list Type variable to be unified occ
  • 链接“let”语句时使用“and”还是“in”更好?

    我意识到这可能是一个愚蠢的问题 但是 如果我把一堆let不需要需要了解彼此价值观的语句 使用是否更好and or in 例如 以下哪一个更可取 如果有 let a foo and b bar and c baz in etc or let

随机推荐

  • WSO2 ESB:WSO2 REST API 调用中的 XML 响应未解析

    我在 WSO2 ESB 4 8 1 代理服务中处理来自 REST API 的纯 XML 响应时遇到问题 我的 outSequence 显然期望 API 调用结果有效负载是 SOAP 消息 但事实并非如此 纯 XML 从而在进一步处理它时导致
  • 是否可以在 ElasticSearch 中对嵌套文档进行排序?

    假设我有以下映射 site properties title type string description type string category type string tags type array point type geo p
  • 注释类型测试的超时参数

    我正在尝试在 IntelliJ IDEA 项目内的单元测试中使用注释类型测试的超时参数 第二个可选参数超时会导致测试失败 如果 花费的时间比指定的时钟时间长 以 毫秒 以下测试失败 Test timeout 100 public void
  • iPhone自动旋转动画

    是否可以关闭自动旋转动画 我希望它旋转 但我只是不希望发生动画 就像即时切换一样 如果你确实需要 只需使用setAnimationsEnabled of UIView void willRotateToInterfaceOrientatio
  • Spacemacs 中的 Org-mode:with-eval-after-load 和 extra-packages

    背景 Spacemacs 文档推荐 http spacemacs org layers emacs org README html important note您将其他组织模式配置包装在其中 with eval after load org
  • 如何在 Silverlight 中克隆路径资源?

    我的 Xaml 文件中定义了一个资源 如下所示
  • MVC 在剃刀中循环,生成的下拉列表未选择值

    我在 razor 中有一个循环 它会多次生成模板 模板内有一个下拉列表 Html DropDownlistFor x gt x pasajero i option Model optionItems 下拉列表已呈现 但未设置任何选项sele
  • 如何等待来自 WatiN 的 jQuery Ajax 请求完成?

    我在写WatiN http watin sourceforge net 测试来测试Ajax http en wikipedia org wiki Ajax 28programming 29Web 应用程序 并遇到了 Ajax 请求的计时问题
  • contenteditable div退格和删除文本节点问题

    contenteditable div 以及删除可编辑 div 内的 html 和 或非内容可编辑内容存在很多问题 使用优秀 Tim Down 的回答 如何删除具有 contentEditable 属性的 div 内的 HTML 元素 ht
  • 如何使用激活器调试Play应用程序?

    我知道对于经典的 Play 框架来说它是play debug run 我尝试跑步activator debug run但我收到以下错误 error Not a valid command debug similar idea error N
  • rake asset:预编译中止,无法推送到heroku

    我正在使用 Enki 博客 gem 它在本地工作 尝试准备推送到 heroku 以前从未遇到过问题 我尝试预编译 它做到了这一点 Users me rvm rubies ruby 1 9 3 rc1 bin ruby Users me rv
  • UITableView 背景颜色 iOS 9

    我有一个 UITableView 我想将其背景颜色设置为透明 界面生成器中表视图和所有子视图的背景颜色设置为透明 它适用于 iOS 8 和 7 但不适用于 iOS 9 有什么想法吗 cellForRowAtIndexPath 方法 cell
  • 如何将 Entity Framework 4.0 与 Xml 或内存存储(非 SQL)结合使用

    如何为实体框架模型指定 Xml 或仅指定内存存储 连接字符串需要提供程序 通常是 SQL 提供程序字符串 但它不会让我忽略提供者 我意识到我可以完全抛弃设计器生成的对象并采用纯 POCO 但随后我必须实现自己的序列化层 可以做到这一点 但对
  • 我无法修改的库中类的 Wcf 数据契约

    嗨 我有一个类库 它执行方法 并且有很多不同的类 它用作方法调用的参数 我正在为这个类库创建一个 wcf 包装器 但我无权更改类库 现在我的问题是如何轻松地将这些类公开为数据契约 数据成员 我有大约 100 个不同的类 我需要这些方法 Th
  • 如何在 iPhone 触摸屏上实现 onmousedown 和 onmouseup

    我对 HTML JavaScript 很陌生 但正在学习 我想在 iPhone 上制作一个按钮 按下时运行 JavaScript 命令 松开时运行另一个按钮 我尝试使用以下方法来做到这一点onmousedown and onmouseup属
  • PHP如何确定浏览器POST请求数据中的字符编码?

    当浏览器在 POST 请求正文中发送数据时 即name value来自表单元素的对 PHP 如何确定字符编码 以便它可以正确地将位流解码为字符以供其内部使用 我可以理解 PHP 不需要解码的某些任务 例如对于 SQL INSERT 查询 它
  • Java 中可以实现高级 GUI 吗?

    也许是一个哲学问题 我最近在 GUI 中看到了一些有趣的视觉效果 主要是在本机平台 API 上 我知道 这只是软件 而且只要有足够的工作 像素就可以完成任何事情 问题是 最后 Java 真的是用 GUI 做奇特事情的选择吗 我想这似乎是一件
  • MultiActionController 的替换类,在 4.3.3 中已弃用

    升级到时修复所有已弃用的 api春季4 3 3 我面临着一个问题MultiActionController在多个位置使用的类 有没有选择spring 中的类具有相同的功能MultiActionController 按照春天的说法docs h
  • 在 JavaFX 中打印 TableView 内容

    我正在学习 JavaFX 我创建了我的TableView并用数据填充它 我添加了一个按钮 当单击它时 可以打印表格内容 这是完整的代码 public final class TableViewSample2 extends Applicat
  • 标准机器学习中的结构比较

    我似乎找不到关于为什么这不起作用的参考 2000 1 lt 2000 1 stdIn 18 1 18 18 Error operator and operand don t agree overload operator domain Z