16得票3回答
SML中的`o`运算符只适用于单参数函数吗?

o组合操作符(如val x = foo o bar,其中foo和bar都是函数),只能用于单参数函数和/或参数数量相等的函数吗? 如果不是,那么如何将foo(x,y)与bar(x)组合起来的语法是什么。

7得票1回答
标准ML类型中的问号是什么意思?

例如: vagrant@precise32:/vagrant$ rlwrap sml Standard ML of New Jersey v110.76 [built: Mon May 12 17:11:57 2014] - TextIO.StreamIO.inputLine ; [auto...

8得票4回答
在SML中从列表中移除重复项

我刚开始学习SML中的函数式编程,我想知道如何将以下两个函数合并为一个函数。函数isolate使用辅助函数'removes'来删除任意类型('a)列表的重复项。 fun isolate [] = [] | isolate (l as x::xs) = x::isolate(remove(...

9得票1回答
如何在SML中打印变量?

我刚接触SML,在调试时通常会打印变量以查看它是否与我预期的相符。我想要在函数内部打印出一个变量。现在我有以下代码:function header.. let val prod val prod = c + x * y; in (print "product "; prod mod ...

9得票8回答
如何在Mac上安装可运行的Standard ML版本?

我正在使用Mac OSX 10.7.5,但似乎无法下载带有REPL的可用的Standard ML编译器。这是应该很困难吗?有最好的ML我应该下载吗?我已经尝试过SML / NJ和MLton但都没有成功。

8得票1回答
从多个文件编译SML项目

我有一个包含许多文件的项目,希望它能与大多数流行的编译器一起使用。 不幸的是,PolyML和SML/NJ需要use命令,而MosML则需要使用load来明确加载基础库结构,这被poly或sml所不认可。 此外,MLton和MLKit需要完全不同的.mlb文件,只列出文件名,并且需要明确导入...

7得票2回答
将其参数应用于自身的函数?

考虑以下 SML 函数: fn x => x x 这会产生以下错误(New Jersey标准ML v110.72): stdIn:1.9-1.12 Error: operator is not a function [circularity] operator: 'Z i...

18得票3回答
SML: 类型和数据类型的区别

我对SML还不是很熟悉,想确保自己真正掌握基础知识。在SML中,类型(type)和数据类型(datatype)有什么区别,何时应该使用哪个?

9得票2回答
SML中的选项SOME和NONE是什么?

我是SML的新手(实际上也是编程的新手)。 fun readlist (infile : string) = let val ins = TextIO.openIn infile fun loop ins = case TextIO...

7得票2回答
SML中的类型转换

我是SML的新手,正在使用SMLNJ方言。 出于某种目的,我一直在尝试将3强制转换为3.0(int到real)。 找不到解决方法。我该怎么做?如何在类型之间进行转换?