smlAan de slag met sml


Opmerkingen

Deze sectie geeft een overzicht van wat sml is en waarom een ontwikkelaar het misschien wil gebruiken.

Het moet ook alle grote onderwerpen binnen sml vermelden en een link naar de gerelateerde onderwerpen bevatten. Aangezien de documentatie voor sml nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.

Installatie

Er zijn een tiental implementaties van Standard ML. MLton produceert zeer geoptimaliseerde code, maar heeft geen REPL . SML / NJ is de meest gebruikte, maar heeft enigszins moeilijke foutmeldingen voor leerdoeleinden. Moscow ML en Poly / ML zijn gemakkelijk om mee te beginnen, maar ondersteunen het .mlb-pakketformaat niet. Dat is echter niet essentieel om aan de slag te gaan.

Hier zijn instructies voor het installeren van elk van SML / NJ, Moscow ML en Poly / ML gedeeld door het besturingssysteem.

Op Windows

SML / NJ:

Moskou ML:

  • Ga naar http://mosml.org/ en klik op "Download Win. Installer". Voer het installatieprogramma uit.
  • U hebt nu een REPL in bijvoorbeeld C:\Program Files (x86)\mosml\bin\mosml.exe .

Homebrew gebruiken op MacOS

SML / NJ:

  • Voer brew install smlnj als uw eigen gebruiker. Test REPL met smlnj .

Moskou ML:

  • Ga naar http://mosml.org/ en klik op "PKG-bestand downloaden". Voer het installatieprogramma uit.
  • Ontbrekend ... Test REPL hoe? Zit het nu in $PATH ?

Op Ubuntu / Debian Linux

SML / NJ:

  • Voer sudo apt-get install smlnj als de supergebruiker. Test REPL met smlnj .

Moskou ML:

  • (Ubuntu) Voeg de PPA toe als de supergebruiker. Test REPL met mosml .

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

Ondersteuning voor readline toevoegen

Om de pijltjestoetsen te kunnen gebruiken om door lijnen te navigeren die eerder in de REPL waren getypt, kunnen de meeste SML-compilers profiteren van het programma rlwrap . Gebruik Homebrew op MacOS om dit te installeren door brew install rlwrap , en op Ubuntu / Debian Linux, installeer dit door sudo apt-get install rlwrap . Probeer vervolgens het volgende in de terminal:

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

Deze aliassen kunnen worden toegevoegd aan bijvoorbeeld uw ~/.bashrc zodat ze standaard werken.

De pijltjestoets zou nu beter moeten werken.