Miranda (programozási nyelv)

A Miranda  egy funkcionális programozási nyelv , amelyet David Turner 1985 -ben alapított funkcionális nyelvként. Szigorú polimorf típusú rendszerrel rendelkezik, támogatja a felhasználói adattípusokat. Az ML nyelvhez hasonlóan számos egyetemen tanítják. A funkcionális objektumok a meglévő funkciók currying (részleges alkalmazása) felhasználásával készülnek. Lusta szemantikája van. A program definíciók halmaza.

A SASL és a Kent Recursive Calculator nyelvek utódja , néhány ML és Hope fogalmat használva . Nagy hatással volt a Haskell nyelv fejlesztőire .

A nyelv elnevezése William Shakespeare Vihar című drámájának hősnője , Miranda nevéből származik. Ebben a „Brave new world!” kifejezést mondja, aminek az alkotók szerint „bátor új világot kell vinnie a funkcionális programozásba” [1] . A hősnőt a nyelv logója is ábrázolja.

Mintakód

Függvény meghatározása map, majd alkalmazása olyan függvényre, amely kettővel növeli az argumentumot:

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

A kettőspont határozza meg a lista fejét (első eleme) és farkát (későbbi elemek) mind a kompozícióban, mind a mintaillesztésben. Az argumentumot 2-vel növelő függvényt úgy kapjuk meg, hogy részlegesen alkalmazunk egy primitív függvényt +az argumentumra 2. A bejegyzés [1..6] egy rövidített bejegyzés [1, 2, 3, 4, 5, 6].

Lista kifejezés példa :

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

Irodalom

  • Field A., Harrison P. Funkcionális programozás. — M .: Mir, 1993. — 637 p. — ISBN 5-03-001870-0 .

Jegyzetek

  1. A Miranda névről Archiválva : 2016. április 4. a Wayback Machine -nél .

Linkek