Въведение в езика Haskell

Съдържание

Нека видим а запознаване с езика за програмиране Haskell, Става въпрос за а функционален език. В този тип език функциите ще извършат изчисление и ще върнат нещо, това няма вторичен ефект. В допълнение, променливите могат да приемат само една стойност, тоест ако имаме променлива, наречена n, на която присвояваме стойността 10, n ще струва 10, не можем да я накараме да стане 14 или 3.

Haskell е статично въведен езикДруг пример за език като този е Java, това означава, че когато компилираме код, компилаторът ще знае какъв тип данни принадлежи на част от паметта (цяло число, низ, символ, булева стойност и т.н.), противно на това, което се случва в динамични езици, като Python или Ruby.

Този език прави мързеливи оценки, той няма да направи изчисление, докато дадена стойност не е напълно необходима, и също така ще попречи на тази оценка да се повтори, ако имаме нужда от изчислението по -късно. За експоненциалните функции това е нещо интересно, тъй като ще помогне за намаляване на времето за изпълнение.

След запознаване с някои от характеристиките на езика, ще започнем с действието, урокът ще бъде напълно практичен, първото нещо, от което се нуждаем, е да инсталираме Haskell на нашата система, за този урок ще се използва Ubuntu, затова ще изпълня следната команда в терминала:

 sudo apt-get инсталирайте haskell-платформа
Ако използвате друга операционна система, ние ви оставяме бутон към официалната страница на Haskell, където ще намерите как да продължите с инсталацията, на Windows, Mac или друга дистрибуция на Linux:

ИЗТЕГЛЕТЕ HASKELL

Нека започнем с практиката, ще разделим урока на примери, като започнем с най -простите.

Пример 1
Ще започнем с стартиране на конзолата Haskell, за това в терминал ще напишем следната команда:

 ghci
Както можете да видите, зареждаме:

Подканата е Prelude, можем да я променим, в този случай ще я поставим в hkl, за това ще изпълним:

 : задайте подкана "hskl>"
Виждаме как се е променило:

За да завършим с първия пример, ще видим как да направим някои операции в тази конзола, по -долу е улавянето на примерите, можем да видим сума, разделение (виждаме, че ни показва десетични знаци, на други езици Тя би върнала целочислената част) и операция с скоби, за да оцени нейната функция.

ЗабележкаАко искаме да излезем от конзолата Haskell, пишем:

 : Какво
И ние даваме влизане.

Пример 2
В следния пример ще работим с булеви типове данни, вижте следното изображение, за да разберете тяхната употреба:

Не изисква допълнително обяснение, използваме и ((&&) и или (||), в допълнение към отрицанието (не). В момента всичко е лесно, както виждаме.

Пример 3
Можем да сравняваме низове, числа, както правим на други езици, нека видим как работи:

Сравнението между различните видове ни прави грешка, както се очакваше.

Пример 4
В този пример ще видим функции, които имаме в Haskell, които вероятно ще използваме често:

Обясняваме функциите, видени на предишната екранна снимка:

  • succ x: Връща наследника на x, ако x е 3, връща 4.
  • min x y: Връща минималното число между x и y, ако y е 3 и x е 2, връща x.
  • max x y: Връща максимума на x и y, в примера на 3 и 2 връща 3.

Пример 5
В този пример ще създадем някаква „функция“:

Виждаме, че сме създали функцията exp, която прави квадратно число и функция, наречена double, която ще върне два пъти числото, което й предаваме, можете също да видите, че можете да комбинирате това, което функцията връща с други операции като добавяне.

Пример 6
Ще създадем своя собствена максимална функция, но за 3 числа и ще я използваме под улавянето:

Пример 7
Ще видим други функции, с които можем да работим в Haskell, те са прости, ще ги приложим към списъци.

Виждаме как в него това, което прави, е да върне списъка без последния елемент, опашка прави обратното, връща списъка без първия елемент. Ако видим глава връща първия елемент от списъка и разбира се последен връща последния елемент. И последните две функции, дължина ни дава дължината на списъка и обратен Връща ни го, обърна се. Има още функции, но целта на урока не е да се видят всички, просто да се даде приблизителна информация, за да можете да започнете да работите с Haskell.

Пример 8
Ще видим последния пример, който ще изчисли факториала на число, който ще се опита да създаде файл, да го компилира и изпълни, ще създадем файл, наречен test.hs и в него ще добавим следния код:

 fac n = (ако n == 0 тогава 1 else n * fac (n-1)) main = print (fac 3)
За компилиране използваме следния ред:
 ghc -o тест тест.hs
И за да го изпълним поставяме:
 ./тест
Ето изхода:

Е, това е урокът за Език за програмиране на HaskellАко вече имате опит с бързото програмиране, ще се справите, макар че в началото не сте свикнали с функционални езици, програмирането му може да е малко странно.

Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка
wave wave wave wave wave