Le liste immutabili possono essere implementate in standard ML
usando datatype
.
Varie funzioni possono poi essere
implementate usando i due costruttori vuota
e cons
e le due funzioni car
e cdr
.
Sebbene gli esempi precedenti si basino su liste di interi, possono essere facilmente estesi a liste generiche (alpha list) usando il polimorfismo universale parametrico di standard ML.
Come detto, car
e cdr
sono sottospecificate;
tale problema puo' essere risolto aggiungengo un valore "errore" ai
loro possibili risultati: