Miranda (limbaj de programare)

Miranda  este un limbaj de programare funcțional creat în 1985 de David Turner ca limbaj funcțional standard. Are un sistem strict de tip polimorf, acceptă tipuri de date utilizator. La fel ca limbajul ML , este predat la multe universități. Obiectele funcționale sunt construite folosind curry (aplicarea parțială) a funcțiilor existente. Are semantică leneșă. Programul este un set de definiții.

Un succesor al limbajelor SASL și Kent Recursive Calculator , folosind unele concepte ML și Hope . El a avut o mare influență asupra dezvoltatorilor limbajului Haskell .

Numele limbii provine de la numele eroinei piesei The Tempest de William Shakespeare , Miranda. În ea, ea spune sintagma „Brave new world!”, care, potrivit creatorilor, ar trebui să aducă „brave new world la programarea funcțională” [1] . De asemenea, eroina este reprezentată pe sigla limbii.

Exemplu de cod

Definirea unei funcții mapși apoi aplicarea acesteia la o funcție care crește argumentul cu doi:

harta f [] = [] harta f ( x : s ) = ( f x ) : ( harta f s ) L = [ 1 .. 6 ] harta (( + ) 2 ) L [ 3 , 4 , 5 , 6 , 7 , 8 ]

Colonul definește capul (primul element) și coada (elementele ulterioare) unei liste atât în ​​compoziție, cât și în potrivirea modelului. Funcția de incrementare a argumentului cu 2 este obținută prin aplicarea parțială a unei funcții primitive +argumentului 2. Intrarea [1..6] este o intrare scurtată [1, 2, 3, 4, 5, 6].

Exemplu de expresie de listă :

[ n + 2 | n <- [ 1 .. 6 ] ] [ 3 , 4 , 5 , 6 , 7 , 8 ]

Literatură

  • Field A., Harrison P. Programare funcțională. — M .: Mir, 1993. — 637 p. — ISBN 5-03-001870-0 .

Note

  1. Despre numele Miranda Arhivat 4 aprilie 2016 la Wayback Machine .

Link -uri