ML
| Açò és un esborrany sobre informàtica. Amplieu-lo! (citant les fonts) |
ML és un llenguatge de programació funcional desenvolupat per Robin Milner i altres a finals del 1970 a la Universitat d'Edimburg amb una sintaxi inspirada en el llenguatge abstracte ISWIM que ha donat lloc a una família de llenguatges.
Històricament les sigles ML es refereixen a MetaLlenguatge. És conegut per l'ús que fa de l'algorisme d'inferència de tipus Hindley-Milner.
Taula de continguts |
Introducció [modifica]
A l'ML se l'anomena llenguatge funcional impur perquè permet efectes laterals produint programació imperativa, contràriament a llenguatges funcionals purs com el Haskell. Per aquest motiu es considera un llenguatge de programació Multi-paradigma.
Entre les característiques de ML hi ha l'estratègia d'evaluació estricta, funcions com a valors de primer ordre, gestió de memòria per recollidors de brossa, polimorfisme paramètric, tipatge estàtic, inferència de tipus, tipus abstractes de dades, encaixos de patrons i gestió d'excepcions.
Dialectes [modifica]
- SML
- ML Estàndard, incorpora semàntica formal.
- Alice ML
- llenguatge[1] i compilador impulsats per la universitat de Saarland regió alemanya, fronterera amb França on s'anomena Sarre.
- Caml/OCaml
- llenguatge[2] i compilador impulsats per l'entitat estatal de recerca francesa INRIA, és l'acrònim de Categorical Abstract Machine Language.
- F#
- entorn[3] de Microsoft consistent en llenguatge basat en OCaml i biblioteques .NET ; Vegeu "Programació en F#" [4]
- LML
- "Lazy ML": llenguatge[5][6] ML d'avaluació tardana desenvolupat a la universitat tecnològica Chalmers de Göteborg, Suècia
- ATS
- ML amb "tipus dependents de valors" desenvolupat a la Universitat de Boston
- Parallel ML (Projecte Manticore)
- Extensió de paraŀlelisme sobre Concurrent ML desenvolupat a la Univ. de Chicago.[7]
Referències [modifica]
- ↑ Alice ML (anglès)
- ↑ Llenguatge OCaml (anglès)
- ↑ Llenguatge F sostingut de Microsoft(anglès)
- ↑ Viquillibre anglès - Programació en F#(anglès)
- ↑ Computer Journal - The Chalmers Lazy-ML Compiler (anglès)
- ↑ Exemples de LML(anglès)
- ↑ Compilador Manticore de Parallel ML(anglès)
Vegeu també [modifica]
Enllaços externs [modifica]
- Standard ML i OCaml a banda i banda (anglès)
- Comparant OCaml i SML (anglès)
- F#: Ocaml on .NET (anglès)
- Viquillibre sobre F# (anglès)
|
|||||