smlCommencer avec sml


Remarques

Cette section fournit une vue d'ensemble de ce qu'est sml et pourquoi un développeur peut vouloir l'utiliser.

Il devrait également mentionner tous les grands sujets dans sml, et établir un lien avec les sujets connexes. La documentation de sml étant nouvelle, vous devrez peut-être créer des versions initiales de ces rubriques connexes.

Installation

Il existe une douzaine de mises en œuvre de la norme ML. MLton produit un code très optimisé, mais n'a pas de REPL . SML / NJ est le plus utilisé, mais présente des messages d’erreur légèrement difficiles à apprendre. Moscow ML et Poly / ML sont faciles à utiliser, mais ne prennent pas en charge le format de package .mlb. Ce n'est pas essentiel pour commencer, cependant.

Vous trouverez ci-dessous des instructions pour l’installation de SML / NJ, Moscow ML et Poly / ML en fonction du système d’exploitation.

Sous Windows

SML / NJ:

Moscou ML:

  • Allez sur http://mosml.org/ et cliquez sur "Télécharger Win. Installer". Exécutez le programme d'installation.
  • Vous avez maintenant une REPL dans par exemple C:\Program Files (x86)\mosml\bin\mosml.exe .

Utiliser Homebrew sur MacOS

SML / NJ:

  • Exécutez brew install smlnj tant que votre propre utilisateur. Testez REPL avec smlnj .

Moscou ML:

  • Allez à http://mosml.org/ et cliquez sur "Télécharger le fichier PKG". Exécutez le programme d'installation.
  • Missing ... Test REPL Comment? Est-ce dans $PATH maintenant?

Sur Ubuntu / Debian Linux

SML / NJ:

  • Exécutez sudo apt-get install smlnj tant que super utilisateur. Testez REPL avec smlnj .

Moscou ML:

  • (Ubuntu) Ajoutez le PPA en tant que super utilisateur. Testez REPL avec mosml .

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

Ajout du support readline

Afin de pouvoir utiliser les touches fléchées pour naviguer dans les lignes précédemment saisies dans la REPL, la plupart des compilateurs SML peuvent bénéficier du programme rlwrap . En utilisant Homebrew sur MacOS, installez-le par brew install rlwrap , et sur Ubuntu / Debian Linux, installez-le par sudo apt-get install rlwrap . Ensuite, dans le terminal, essayez ce qui suit:

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

Ces alias peuvent être ajoutés par exemple à votre ~/.bashrc pour qu'ils fonctionnent par défaut.

La touche fléchée devrait maintenant fonctionner mieux.