ML (linguaggio di programmazione): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Correzione ortografica
Folto82 (discussione | contributi)
mNessun oggetto della modifica
Riga 1:
{{tmp|linguaggio di programmazione}}
'''ML''' è un [[linguaggio di programmazione]] [[programmazione funzionale|funzionale]] [[general purpose]] sviluppato dall'équipe di Robin Milner presso l'[[Università di Edimburgo]] alla fine degli anni 70, con una sintassi ispirata ad [[ISWIM]]. Storicamente, ML sta per '''''M'''eta'''L'''anguage'' ([[metalinguaggio]]) visto che era nato per la verifica formale attraverso il theorem prover [[Logic for Computable Functions|LCF]] (il linguaggio di cui ML rappresentava il livello meta era [[pplambda]], una combinazione di [[Logica del primo ordine|calcolo dei predicati del primo ordine]] e [[Lambda calcolo|lambda-calcolo]] polimorfico debolmente tipizzato). Tra i linguaggi di programmazione funzionali è tra i più noti per il suo utilizzo dell'[[algoritmo]] di inferenza dei tipi di Hindley-Milner, che riesce ad inserire quasi tutti i tipi senza bisogno di dichiarazioni.
 
== Descrizione ==
 
ML viene definito come linguaggio funzionale impuro, perché a differenza di altri linguaggi funzionali, come ad es. [[Haskell (linguaggio)|Haskell]], consente la programmazione imperativa, e pertanto anche effetti collaterali.