sml开始使用sml


备注

本节概述了sml是什么,以及开发人员可能想要使用它的原因。

它还应该提到sml中的任何大型主题,并链接到相关主题。由于sml的文档是新的,您可能需要创建这些相关主题的初始版本。

安装

标准ML有十几种实现方式。 MLton生成非常优化的代码,但没有REPLSML / NJ是使用最广泛的,但是出于学习目的而具有稍微困难的错误消息。 莫斯科MLPoly / ML很容易上手,但不支持.mlb包格式。但这对于入门并不重要。

以下是按操作系统划分安装SML / NJ,Moscow ML和Poly / ML的说明。

在Windows上

SML / NJ:

莫斯科ML:

  • 转到http://mosml.org/并单击“下载Win.Installer”。运行安装程序。
  • 您现在有一个REPL,例如C:\Program Files (x86)\mosml\bin\mosml.exe

在MacOS上使用Homebrew

SML / NJ:

  • brew install smlnj 作为您自己的用户运行。用smlnj 测试REPL。

莫斯科ML:

  • 转到http://mosml.org/并单击“下载PKG文件”。运行安装程序。
  • 缺少...测试REPL怎么样?现在是$PATH 吗?

在Ubuntu / Debian Linux上

SML / NJ:

  • 以超级用户身份运行sudo apt-get install smlnj 。用smlnj 测试REPL。

莫斯科ML:

  • (Ubuntu)将PPA添加为超级用户。用mosml 测试REPL。

    sudo add-apt-repository ppa:kflarsen/mosml
    sudo apt-get update
    sudo apt-get install mosml
     

添加readline支持

为了能够使用箭头键来导航先前输入到REPL中的行,大多数SML编译器都可以从程序rlwrap 受益。在MacOS上使用Homebrew,通过brew install rlwrap ,在Ubuntu / Debian Linux上,通过sudo apt-get install rlwrap 。然后在终端中尝试以下操作:

alias mosml='rlwrap mosml -P full'
alias sml='rlwrap sml'
alias poly='rlwrap poly'
 

这些别名可以添加到例如~/.bashrc 因此它们默认工作。

箭头键现在应该更好。