我正在努力学习SML,并写了一个类似于的小游戏,下面的代码在REPL中运行良好,并且与MLTON编译得很好。但是,它总是导致else语句("Error!")。如果我尝试用print(valOf(response))来调试它,而不是If语句,它将返回我键入的任何字符串(如果我没有键入任何内容,则返回一个空字符串)。所以我认为它不是inputLine函数,也不是let语句不返回stdin,也不应该是比较op。 (print "You're in a dark, mottled room.\n";
pr
我在MacOSX10.9上使用SMLNJv110.78。我试图使用来自BASH的命令行参数,如下所示:程序progname.sml编译并运行并使用命令行参数生成值(使用SMLofNJ.getArgs()函数),但在处理结束时,REPL返回错误:!* unable to process `1.0' (unknown extension `0')如何避免那些最终的错误消息?
好的,让我首先说我是Standard ML的超级新手。我刚刚开始用这种语言编程。老实说,我不打算用这种语言挖得太深。我只需要完成一次任务,然后继续前进。因此,为了在新泽西的sml中执行一个数组,我需要赋值maxLen变量。我现在只给它分配了24块,但也许我现在做的方式是不起作用。val maxLen = 24; (*assigning maxLen 24 as the largest array possible*)
我已经使用sudo apt-get install smlnj安装了smlnj,但是当我尝试使用sml在CLI上运行它时,我得到了这个错误/usr/lib/smlnj/bin/.run/run.x86-我发现这个文档http://www.smlnj.org/dist/working/110.75/NOTES/INSTALL建议您也需要32位的支持,所以我也安装了这些建议的包:apt-get in