Introducere în limba Haskell

Cuprins

Să vedem un introducere în limbajul de programare Haskell, Este vorba despre un limbaj funcțional. În acest tip de limbaj, funcțiile vor efectua un calcul și vor returna ceva, nu are efect secundar. În plus, variabilele pot lua o singură valoare, adică dacă avem o variabilă numită n căreia îi atribuim valoarea 10, n va valora 10, nu o putem face să devină 14 sau 3.

Haskell este un limbaj tipizat staticUn alt exemplu de limbaj ca acesta este Java, aceasta înseamnă că atunci când compilăm un cod, compilatorul va ști ce tip de date aparține unei părți a memoriei (număr întreg, șir, caracter, boolean etc.), contrar a ceea ce se întâmplă în limbaje dinamice, cum ar fi Python sau Ruby.

Acest limbaj face evaluări leneșe, nu va face un calcul până când o valoare nu este complet necesară și, de asemenea, va împiedica repetarea acestei evaluări dacă vom avea nevoie de calcul ulterior. Pentru funcțiile exponențiale este ceva interesant, deoarece va ajuta la reducerea timpului de execuție.

După o introducere în unele dintre caracteristicile limbajului, vom începe cu acțiunea, tutorialul va fi complet practic, primul lucru de care vom avea nevoie este să instalăm Haskell pe sistemul nostru, pentru acest tutorial va fi folosit Ubuntu, de aceea voi executa următoarea comandă în terminal:

 sudo apt-get install haskell-platform
Dacă utilizați un alt sistem de operare, vă lăsăm un buton către pagina oficială Haskell, unde veți găsi cum să procedați la instalare, fie pe Windows, Mac sau o altă distribuție Linux:

DESCĂRCAȚI HASKELL

Să începem cu practica, vom împărți tutorialul în exemple, începând cu cel mai simplu.

Exemplul 1
Vom începe prin lansarea consolei Haskell, pentru aceasta într-un terminal vom scrie următoarea comandă:

 ghci
După cum puteți vedea, încărcăm:

Promp-ul este Prelude, îl putem schimba, în acest caz îl vom pune în hkl, pentru aceasta vom executa:

 : set prompt "hskl>"
Vedem cum s-a schimbat:

Pentru a termina cu primul exemplu, vom vedea cum să facem câteva operații în această consolă, mai jos este capturarea exemplelor, putem vedea o sumă, o diviziune (vedem că ne arată zecimale, în alte limbi Ar fi returnat partea întreagă) și o operație cu paranteze, pentru a-i aprecia funcția.

NotăDacă vrem să ieșim din consola Haskell, scriem:

 : ce
Și dăm intrare.

Exemplul 2
În exemplul următor vom lucra cu tipuri de date booleene, consultați următoarea imagine pentru a înțelege utilizarea lor:

Nu necesită explicații suplimentare, folosim și (&&) și sau (||), pe lângă negație (nu). În prezent, totul este ușor, după cum putem vedea.

Exemplul 3
Putem compara șiruri, numere, așa cum facem și în alte limbi, să vedem cum funcționează:

Comparația dintre diferite tipuri ne aruncă o eroare, așa cum era de așteptat.

Exemplul 4
În acest exemplu vom vedea funcțiile pe care le avem în Haskell, pe care probabil le vom folosi des:

Vă explicăm funcțiile văzute în captura de ecran anterioară:

  • succ x: Returnează succesorul lui x, dacă x este 3, returnează 4.
  • min x y: Returnează numărul minim între x și y, dacă y este 3 și x este 2, returnează x.
  • max x y: Returnează maximul lui x și y, în exemplul 3 și 2, returnează 3.

Exemplul 5
În acest exemplu vom crea unele „funcții”:

Vedem că am creat funcția exp, ceea ce face este pătrat un număr și o funcție numită double, care va returna de două ori numărul pe care i-l transmitem, puteți vedea, de asemenea, că puteți combina ceea ce returnează o funcție cu altul operațiuni precum adunarea.

Exemplul 6
Vom crea propria noastră funcție maximă, dar pentru 3 numere și o vom folosi, sub captură:

Exemplul 7
Vom vedea alte funcții cu care putem lucra în Haskell, sunt simple, le vom aplica listelor.

Vedem cum init ceea ce face este să returneze lista fără ultimul element, coadă face opusul, returnează lista fără primul element. Dacă vedem cap returnează primul element al listei și bineînțeles ultimul returnează ultimul element. Și ultimele două funcții, lungime ne dă lungimea listei și verso El ne-o întoarce întoarsă. Există mai multe funcții, dar nu este obiectivul tutorialului să le vedeți pe toate, doar să oferiți o aproximare, astfel încât să puteți începe să lucrați cu Haskell.

Exemplul 8
Vom vedea ultimul exemplu care va calcula factorialul unui număr, care va încerca să creeze un fișier, să îl compileze și să îl execute, vom crea un fișier numit test.hs și în acesta vom adăuga următorul cod:

 fac n = (dacă n == 0 atunci încă 1 n * fac (n-1)) main = print (fac 3)
Pentru a compila folosim următoarea linie:
 ghc -o test test.hs
Și pentru a-l executa punem:
 ./Test
Iată rezultatul:

Ei bine, acesta este tutorialul de pe Limbaj de programare HaskellDacă aveți deja experiență de programare rapidă, veți obține atenția, deși dacă nu sunteți obișnuiți cu limbaje funcționale la început, programarea acestuia poate fi oarecum ciudată.

V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave