安裝

標準 ML 有十幾種實現方式。 MLton 生成非常優化的程式碼,但沒有 REPLSML / NJ 是使用最廣泛的,但是出於學習目的而具有稍微困難的錯誤訊息。莫斯科 MLPoly / ML 很容易上手,但不支援 .mlb 包格式。但這對於入門並不重要。

以下是按作業系統劃分安裝 SML / NJ,Moscow ML 和 Poly / ML 的說明。

在 Windows 上

SML / NJ:

莫斯科 ML:

  • 轉到 http://mosml.org/ 並單擊“下載 Win.Installer”。執行安裝程式。
  • 你現在有一個例如 C:\Program Files (x86)\mosml\bin\mosml.exe 的 REPL。

在 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 中,因此它們預設工作。

箭頭鍵現在應該更好。