在Windows上运行标准ML

时间:2012-04-10 19:23:08

标签: windows sml smlnj ml polyml

我一直在寻找一些关于如何在Windows上运行Standard ML的好文档。有没有人对此有很好的指导?

我尝试使用本指南在cygwin中编译sml / nj:http://www.smlnj.org/install/index.html

$ config/install.sh
config/install.sh: Using shell /bin/sh.
config/install.sh: SML root is /usr/local/sml.
config/install.sh: Installation directory is /usr/local/sml.
config/install.sh: Installing version 110.74.
config/install.sh: URL of source archive is http://smlnj.cs.uchicago.edu/dist/working/110.74/.
config/install.sh: Script /usr/local/sml/bin/.arch-n-opsys reports ARCH=x86; OPSYS=win32; HEAP_SUFFIX=x86-win32.
/usr/local/sml/config/unpack: The run-time tree already exists.
config/install.sh: Compiling the run-time system.
(nmake /Fmakefile.win32 MAKE="nmake /Fmakefile.win32" RUNTIME="run.x86-win32.exe" VERSION="v-x86-win32" CC="cl" CFLAGS="/Zi" CPP="cl /E /EP" TARGET=X86 DEFS="  /DHOST_X86 /DTARGET_X86 /DOPSYS_WIN32 /DVREGS /DINDIRECT_CFUNC /DDLOPEN" XOBJS="" XLIBS="" LD_LIBS="" XCLIBS="" run.x86-win32.exe)
make: -c: Command not found
mk.x86-win32:26: recipe for target `all' failed
make: *** [all] Error 127
config/install.sh: !!! Run-time system build failed for some reason.

任何建议都将不胜感激。

3 个答案:

答案 0 :(得分:4)

Moscow ML(MosML)在Windows上开箱即用(不需要cygwin)。您可以下载zip文件或自解压安装程序。

该网站还包含相当好的文档(适用于某些MosML特定部分)以及其他良好参考文献的链接。

关于您的问题,您引用的指南未提及在Windows上编译sml / nj。仅仅通过使用cygwin并没有使它成为“linux”(cygwin有相当多的怪癖)。 源代码包含一些关于如何在cygwin上安装(和编译)的notes。请注意,如果您使用的是旧版本的sml / nj,那么它不一定与cygwin兼容。

旁注。有一个Windows的msi安装程序,为什么不使用它?

答案 1 :(得分:2)

在标准ML的悠久历史中,它已经成为一个噱头,它的最佳实现几乎不为人所知:Poly/ML

Github上的releases也包括Windows的MSI。

答案 2 :(得分:1)

如果您正在寻找快速而肮脏的实施方案,您可能需要尝试Cambridge ML。我们用它在剑桥大学教授本科生ML。不是大规模开发的最佳选择,但足以教授语言的基础知识。