
[英]What are the primary theoretical difficulties with adding ML-style modules to Haskell?
众所周知,Haskell风格的类型类和ML风格的模块提供了不同的指定接口的机制。 它们(可能)具有相同的功率,但实际上每种都有其自身的优点和缺点。 由于我在语言功能方面有点像包容性,我的问题是:在Haskell中添加ML样式模块有哪些主要的理论上的困难? 我对以下几行的答案感兴趣: ...
[英]What are the primary theoretical difficulties with adding ML-style modules to Haskell?
众所周知,Haskell风格的类型类和ML风格的模块提供了不同的指定接口的机制。 它们(可能)具有相同的功率,但实际上每种都有其自身的优点和缺点。 由于我在语言功能方面有点像包容性,我的问题是:在Haskell中添加ML样式模块有哪些主要的理论上的困难? 我对以下几行的答案感兴趣: ...
[英]Explaining pattern matching vs switch
我一直试图向几个人解释切换语句和模式匹配(F#)之间的区别,但我还没有真正解释它。大多数时候他们只是看着我说“为什么你不只是使用if..then..else“。 你会如何向他们解释? 编辑! 感谢大家的精彩答案,我真的希望能够标出多个正确的答案。 ...
[英]SML-NJ, how to compile standalone executable
我开始学习标准ML,现在我尝试使用新泽西标准ML编译器。 现在我可以使用交互式循环,但是如何将源文件编译为独立的可执行文件? 例如,在C中,人们可以写 $ gcc hello_world.c -o helloworld 然后运行helloworld二进制文件。 我阅 ...
[英]What's the difference (if any) between Standard ML's module system and OCaml module system?
我的问题是,标准ML的模块系统和OCaml模块系统之间是否有任何区别? OCaml是否有所有对仿函数,归属等的支持...... SML有哪些? ...
[英]Encoding Standard ML modules in OO
ML模块系统是数据抽象的编程语言支持的高水准标记。 但是,从表面上看,似乎可以很容易地在支持抽象类型成员的面向对象语言中进行编码。 例如,我们可以在Scala中编码SML模块系统的元素,如下所示: SML签名:没有具体成员的Scala特征 具有给定签名的SML结构:扩展给定 ...
[英]Warning: calling polyEqual
有人可以解释一下,这个警告是什么意思? 以及为什么在以下语句中我有“a 而不是 'a: 这是我的功能: ...
[英]If SML.NET had functors why can't F#?
这个问题始于 我将LC PAULSON的“ ML for the working Programmer ”( WorldCat )翻译成F#,它使用仿函数作为例子。 最终希望翻译使用仿函数的Chris Okasaki的“ Purely Functional Data Struc ...
[英]Can good type systems distinguish between matrices in different bases?
我的程序(Hartree-Fock/iterative SCF)有两个矩阵 F 和 F',它们实际上是用两个不同的基数表示的同一个矩阵。 我刚刚失去了三个小时的调试时间,因为我不小心使用了 F' 而不是 F。在 C++ 中,类型检查器没有捕捉到这种错误,因为这两个变量都是Eigen::Matrix ...
[英]Growth of Type Definition in SML Using Hindley Milner Type Inference
曾经有人在SML中向我展示了一个小技巧,他们在他们的REPL中写出了大约3或4个函数,最后一个值的结果类型非常长(就像许多页面滚动一样长)。 有谁知道什么代码生成这么长的类型,或者是否有这种行为的名称? ...
[英]ML IDE and Compiler for Windows or Linux or Mac
我必须在ML中编写一些代码,这是我第一次使用该语言。 标准ML是否有任何开发环境? (最好在Windows下)。 我尝试使用googling(和stackOverFlowing!),但我发现的只是Linux的简单编译器(最多使用交互式控制台),但没有IDE或Eclipse / NetBea ...
[英]What, if anything, do you need to add to a dependent type system to get a module system?
依赖类型系统似乎支持 ML 模块系统的某些用途。 你从一个模块系统中得到了什么,而你没有从依赖记录中得到什么? 模块~记录 签名~记录类型 函子 ~ 记录上的函数 具有抽象类型组件的模块 ~ 具有类型字段的依赖记录 我对它作为模块系统的工作情况感兴趣,以及是否以及如何集成应用函子和 mixin 等 ...
[英]Line Comments in Standard ML
我正在学习ML,用SML / NJ方言。 我想弄清楚的是,是否有一个行注释运算符。 我找到了块注释运算符,(* ... *),但我真的错过了行注释。 建议? 或者我只是坚持使用块评论? ...
[英]Functional Breadth First Search
功能深度优先搜索在有向无环图中很可爱。 然而,在带循环的图中,我们如何避免无限递归? 在程序语言中,我会在我点击它们时标记节点,但是让我说我不能这样做。 访问节点列表是可能的,但速度很慢,因为使用一个会导致在重复之前对该列表进行线性搜索。 比这里的列表更好的数据结构显然会有所 ...
[英](ML) Modules vs (Haskell) Type Classes
根据Harper( https://existentialtype.wordpress.com/2011/04/16/modules-matter-most/ ),似乎Type Classes根本没有提供与Modules提供的相同级别的抽象,而我正在拥有很难确切地弄清楚原因。 并且在该链接中没 ...
[英]How can I load a ml file in toplevel of OCaml, just like `use mine.sml` in SML/NJ?
在SML的repl ,你可以只输入use whatever.sml并将.sml所有内容.sml到repl 。 我怎么能在OCaml中做到这一点? ...
[英]Curried anonymous function in SML
我有下面的功能,它的工作原理: 但这个不起作用: 谁能告诉我为什么? 或者给我一些提示让它工作? ...
[英]How to 'fix' the SML/NJ interactive system to use Arrow Keys
我在使用SML / NJ交互系统时遇到了一些麻烦,即当我尝试使用我的箭头键时(左或右在我输入的表达式中进行校正,最多重复最后一个表达式),我的终端打印代码。 (例如^[[A for up ^[[D for left,etc。)。 虽然我仍然可以使用该系统,但它使它非常繁琐。 我在Con ...
[英]Is there a Haskell/ML-like compiler to C?
人们已经在Scheme中为iPhone编写游戏 。 因为(某些)Scheme编译器可以编译为C,所以很容易与Objective-C混合并与XCode集成。 我知道 Haskell和OCaml编译器的补丁 ,以启用ARM / iOS后端。 但那些看似非官方的,实验的/不稳定的。 我 ...
[英]How do functional languages represent algebraic data types in memory?
如果你在Haskell中编写生物信息学算法,你可能会使用代数数据类型来表示核苷酸: 你会在标准ML或OCaml中做同样的事情,我假设(我从来没有真正使用过)。 Nucleotide类型的值可以清楚地包含在两位中。 但是,这样做会导致访问时间比每个Nucleotide值使用一个字节 ...