Introduksjon til Haskell -språket

Innholdsfortegnelse

La oss se a introduksjon til Haskell programmeringsspråk, Det handler om en funksjonelt språk. I denne typen språk skal funksjonene utføre en beregning, og de kommer til å returnere noe, det har ingen sekundær effekt. I tillegg kan variabler bare ta en verdi, det vil si at hvis vi har en variabel kalt n som vi tildeler verdien 10, vil n være verdt 10, vi kan ikke få den til å bli 14 eller 3.

Haskell er et statisk skrevet språkEt annet eksempel på språk som dette er Java, dette betyr at når vi kompilerer en kode, vil kompilatoren vite hvilken type data som tilhører en del av minnet (heltall, streng, tegn, boolsk, etc.), i motsetning til hva som skjer i dynamiske språk, for eksempel Python eller Ruby.

Dette språket gjør late evalueringer, det vil ikke foreta en beregning før en verdi er helt nødvendig, og det vil også forhindre at denne evalueringen gjentas hvis vi trenger beregningen senere. For eksponensielle funksjoner er det noe interessant, siden det vil bidra til å redusere utførelsestiden.

Etter en introduksjon til noen av egenskapene til språket, skal vi begynne med handlingen, opplæringen vil være helt praktisk, det første vi trenger er å installere Haskell på systemet vårt, for denne opplæringen vil Ubuntu bli brukt, derfor vil jeg utføre følgende kommando i terminalen:

 sudo apt-get installer haskell-plattform
Hvis du bruker et annet operativsystem, gir vi deg en knapp til den offisielle Haskell -siden, hvor du finner hvordan du går videre med installasjonen, enten på Windows, Mac eller en annen Linux -distribusjon:

LAST NED HASKELL

La oss starte med øvelse, vi vil dele opplæringen i eksempler, med det enkleste.

Eksempel 1
Vi skal starte med å lansere Haskell -konsollen, for dette i en terminal skriver vi følgende kommando:

 ghci
Som du kan se, laster vi inn:

Promp er Prelude, vi kan endre det, i dette tilfellet skal vi sette det i hkl, for dette vil vi utføre:

 : angi ledeteksten "hskl>"
Vi ser hvordan det har endret seg:

For å avslutte med det første eksemplet, skal vi se hvordan vi gjør noen operasjoner i denne konsollen, nedenfor er eksemplene, vi kan se en sum, en divisjon (vi ser at den viser oss desimaler, på andre språk Det ville ha returnert heltallsdelen), og en operasjon med parenteser, for å sette pris på funksjonen.

MerkHvis vi ønsker å gå ut av Haskell -konsollen, skriver vi:

 : hva
Og vi gir enter.

Eksempel 2
I det følgende eksemplet skal vi jobbe med boolske datatyper, se følgende bilde for å forstå bruken av dem:

Det krever ikke ytterligere forklaring, vi bruker og (&&) og eller (||), i tillegg til negasjon (ikke). For øyeblikket er alt enkelt, som vi kan se.

Eksempel 3
Vi kan sammenligne strenger, tall, som vi gjør på andre språk, la oss se hvordan det fungerer:

Sammenligningen mellom forskjellige typer gir oss en feil, som forventet.

Eksempel 4
I dette eksemplet kommer vi til å se funksjoner vi har i Haskell, som vi sannsynligvis vil bruke ofte:

Vi forklarer funksjonene som ble sett i forrige skjermbilde:

  • suks x: Returnerer etterfølgeren til x, hvis x er 3, returnerer 4.
  • min x y: Returnerer minimumstallet mellom x og y, hvis y er 3 og x er 2, returnerer x.
  • maks x y: Returnerer maksimumet for x og y, i eksemplet med 3 og 2 returnerer det 3.

Eksempel 5
I dette eksemplet skal vi lage noen "funksjon":

Vi ser at vi har opprettet exp -funksjonen, som den gjør er firkantet et tall, og en funksjon som kalles double, som vil returnere det dobbelte av tallet vi sender til den, du kan også se at du kan kombinere det en funksjon returnerer med andre operasjoner som tillegg.

Eksempel 6
Vi kommer til å lage vår egen maksimale funksjon, men for 3 tall, og vi kommer til å bruke den, under fangsten:

Eksempel 7
Vi kommer til å se andre funksjoner som vi kan jobbe med i Haskell, de er enkle, vi skal bruke dem på lister.

Vi ser hvordan i det hva den gjør er å returnere listen uten det siste elementet, hale den gjør det motsatte, den returnerer listen uten det første elementet. Hvis vi ser hode returnerer det første elementet i listen og selvfølgelig siste returnerer det siste elementet. Og de to siste funksjonene, lengde gir oss lengden på listen og omvendt Han returnerer den til oss og snudde. Det er flere funksjoner, men det er ikke målet med opplæringen å se dem alle, bare for å gi en tilnærming slik at du kan begynne å jobbe med Haskell.

Eksempel 8
Vi kommer til å se det siste eksemplet som vil beregne faktoren til et tall, som vil prøve å lage en fil, kompilere den og utføre den, vi skal lage en fil som heter test.hs og i den skal vi legge til følgende kode:

 fac n = (hvis n == 0 så 1 annet n * fac (n-1)) main = print (fac 3)
For å kompilere bruker vi følgende linje:
 ghc -o test test.hs
Og for å utføre det legger vi:
 ./test
Her er utgangen:

Vel, dette er opplæringen på Haskell programmeringsspråkHvis du allerede har erfaring med å programmere raskt, får du tak i det, men hvis du ikke er vant til funksjonelle språk i begynnelsen, kan programmeringen være litt merkelig.

Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave