Запуск стандартного машинного обучения в Windows

Я искал хорошую документацию о том, как запустить Standard ML в Windows. У кого-нибудь есть хороший путеводитель по этому поводу?

Я попытался скомпилировать sml/nj в cygwin, используя это руководство: 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.

Мы ценим любые предложения.


person user833970    schedule 10.04.2012    source источник
comment
Я столкнулся с той же проблемой (и в конечном итоге использовал Windows MSI). Я копался в коде, и кажется, что сценарий установки не распознает информацию, которую Cygwin предоставляет об ОС; даже после добавления информации у меня это все равно не сработало, потому что часть кода написана на 32-битном ассемблере, а компилятор использует 64-битные библиотеки C.   -  person Nathaniel Verhaaren    schedule 06.07.2017


Ответы (3)


Moscow ML (MosML) готов к работе в Windows (Cygwin не требуется) . Вы можете скачать zip-файл или самораспаковывающийся установщик.

Веб-сайт также содержит довольно хорошую документацию (полезную для некоторых конкретных частей MosML) и ссылки на другие полезные ссылки.

Что касается вашей проблемы, в руководстве, на которое вы ссылаетесь, не упоминается компиляция sml/nj в Windows. Простое использование cygwin не делает его «linux» (у cygwin есть некоторые особенности). Исходный код содержит некоторые примечания о том, как установить (и скомпилировать) на cygwin . Обратите внимание, если вы используете более старую версию sml/nj, она не обязательно совместима с cygwin.

На заметку. Существует установщик MSI для Windows, почему бы не использовать его?

person Jesper.Reenberg    schedule 10.04.2012
comment
msi выглядит как путь. (хотя приглашение Windows cmd немного ужасно) - person user833970; 11.04.2012

В долгой истории Standard ML стало постоянным приколом, что его лучшая реализация едва ли известна: Poly/ML .

выпуски на Github также включают файлы MSI для Windows.

person Makarius    schedule 08.10.2013
comment
Когда я использую этот (5.7 x64) .msi, все, что я получаю, - это потрепанный PolyML.exe, который выглядит как приложение Windows Repl или что-то в этом роде. Где компилятор и все остальное? - person BitTickler; 21.09.2017
comment
К сведению, из коробки Poly/ML, похоже, не поддерживает операторы use (т. е. импорт модулей) для исходных файлов в каталоге, отличном от текущего (например, use "../util.sml;"), в то время как SML/NJ поддерживает. Poly не выполняет под капотом chdir, необходимых для того, чтобы пути имели смысл. Огромный барьер для входа, если вы используете SML только в образовательных/исследовательских целях. - person iono; 27.02.2021

Если вы ищете быструю и грязную реализацию, вы можете попробовать Кембридж ML. Мы используем его для обучения студентов ML здесь, в Кембридже. Не лучший вариант для масштабной разработки, но достаточный для обучения основам языка.

person William Denman    schedule 16.05.2012