我需要在机器学习中写一些代码,这是我第一次使用该语言。 是否有适用于标准ML的开发环境(最好是在Windows下)?我尝试过谷歌搜索(和StackOverFlow!),但是我只找到了用于Linux的普通编译器(最多带有交互式控制台),没有IDE或Eclipse/NetBeans插件。 有什么建议吗?
我正在尝试推断以下表达式的类型: let rec fix f = f (fix f) 需要将其类型定义为 (a -> a) -> a 在使用底部向上算法(在“泛化 Hindley-Milner 类型推断算法”中描述)时,添加以下规则: a1, c1 ...
我的问题是标准ML的模块系统和OCaml模块系统之间是否有任何区别? OCaml是否具有SML拥有的所有functors、ascriptions等支持?
我知道OCaml不支持重载。那么,除了重载,我们可以采取什么方法来解决这个问题呢? 1)使用多态代替? 2)为不同的函数赋予不同的名称? 3)将同名函数放在不同的模块中? 哪一个会起作用?
在安德鲁·科尼格的关于ML类型推断的轶事中,作者使用归并排序的实现作为ML的学习练习,并且发现了一个“不正确”的类型推断,这让他非常高兴。 Much to my surprise, the compiler reported a type of 'a list -> int list...
曾经有人向我展示了SML中的一个小技巧,他们在REPL中编写了大约3或4个函数,最后一个值的结果类型非常长(需要很多页才能滚动完)。 是否有人知道生成这种长类型的代码,或者是否有一个名称来描述这种行为?
我是 SML 的新手。 在 IF 语句中如何使用 AND 运算符? 这是我的代码: val y = 1; val x = 2; if (x = 1 AND y = 2) then print ("YES ") else print("NO "); 我的错误是: stdIn:66.9-67...
我在函数式语言中看到过很多处理列表并构建一个函数来处理其元素的示例,以便在接收到某些额外值(通常不在生成函数时出现)后执行某些操作,例如: 计算每个元素与平均值之间的差异 (“惰性求值”下的最后两个示例) 在严格的函数式语言中(如ML / OCaml)分阶段进行列表附加,以避免多次遍历第...
众所周知,Haskell风格的类型类和ML风格的模块提供了不同的接口规范机制。它们在功能上(可能)是等价的,但在实践中,每种机制都有其自身的优缺点。 既然我对语言特性有点包容,那么我的问题是:添加ML风格模块到Haskell中的主要理论困难是什么?我对以下类型的答案感兴趣: - 哪些现有的...