Esercizi su Implementazione di Liste in Standard ML

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: