52得票1回答
SML-NJ,如何编译独立的可执行文件。

我开始学习标准ML,并尝试使用New Jersey标准ML编译器。 现在我可以使用交互式环境,但是如何将源文件编译为独立的可执行文件呢? 例如在C中,我们可以这样写: $ gcc hello_world.c -o helloworld 然后运行helloworld二进制文件。 我查阅...

39得票1回答
警告:调用polyEqual

能否有人解释一下这个警告的意思是什么?stdIn:18.35 Warning: calling polyEqual 以下语句中,为什么我使用的是 "a 而不是 'a ?val alreadyVisited = fn : ''a * ''a list -> bool 这是我的函数...

27得票2回答
如何“修复”SML/NJ交互式系统以使用箭头键

我在使用SML/NJ交互式系统时遇到了一些问题,具体来说,当我尝试使用箭头键(左或右)来更正我输入的表达式或者使用上箭头键重复上次输入的表达式时,我的终端会打印出一些代码。(例如,使用上箭头键打印^[[A,使用左箭头键打印^[[D等等)。尽管我仍然可以使用该系统,但这使得操作非常繁琐。 我已...

26得票3回答
标准 ML 中的行注释

我正在学习使用SML/NJ方言的机器学习。我想知道是否有单行注释运算符,因为我找到了块注释运算符 (* ... *),但我非常需要单行注释。 有什么建议吗?还是说我只能使用块注释?

23得票6回答
无法确定操作系统

当我打开终端(我安装了smlnj)并输入 sml 后,它会显示错误信息 sml: unable to determine architecture/operating system。这是什么意思?我是按照这个网站的说明进行安装的,但我不确定——指导有误吗?图片如下:

21得票3回答
SML中的柯里化匿名函数

我有下面这个函数,它可以正常工作:(fn x => x * 2) 2; 但是这个不起作用:(fn x y => x + y ) 2 3; 有人能告诉我为什么吗?或者给我一些提示让它工作起来?

20得票4回答
SMLNJ有任何一种调试器吗?

我已经查看了SMLNJ用户指南,但是没有找到任何关于调试功能的内容。我希望能够查看函数调用栈或者逐步执行函数。这是否可能?是否有其他类似的SML变体实现可以提供这个功能?

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

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

17得票1回答
在SML/NJ中增加打印深度

我想让SML/NJ在顶层打印结果,而不是到处放置#号。 根据一些旧文档(以及2001年在该新闻组发布的帖子),可以使用Compiler.Control.Print.printDepth来实现。 然而,在SML / NJ版本110.7上,这只会导致错误:- Compiler.Control....

17得票1回答
在SML中何时使用分号?

我知道在REPL中分号被用作终止符。但是我对于在源文件中何时使用它们感到困惑。 例如,在val x = 1后面不需要使用分号。但是如果我在use "foo.sml"后省略它,编译器将抱怨。 那么,在使用分号方面有什么规则呢?