我在MacOSX10.9上使用SMLNJv110.78。我试图使用来自BASH的命令行参数,如下所示:
sml progname.sml 2.0 1.0. 程序progname.sml编译并运行并使用命令行参数生成值(使用SMLofNJ.getArgs()函数),但在处理结束时,REPL返回错误:
!* unable to process `2.0' (unknown extension `0')
!* unable to process `1.0' (unknown extension `0')
-如何避免那些最终的错误消息?
谢谢。
发布于 2015-08-30 02:12:59
您需要使用exit语句终止REPL:
val _ = OS.Process.exit(OS.Process.success);当您不以上述方式退出REPL时,解释器将命令行参数视为编译器扩展,因此反馈如下:
!* unable to process `2.0' (unknown extension `0')顺便说一句:您可以使用OS.Process.exit(OS.Process.success);退出REPL,作为CTRL+Z的一个更干净的替代方案。
我怎么戒掉SML?
ML命令行选项备忘单
https://stackoverflow.com/questions/32216264
复制相似问题