Свързани публикации 'haskell'


Програмиране с Haskell — Част 1 — Основи на Haskell
Ще разгледаме основите на програмирането на Haskell, неговия стил и функции на програмиране, неговия механизъм за типове и също така ще обсъдим мързелива оценка. Освен това ще можете да настроите своя инструментариум Haskell и да започнете да пишете код. Поздравления. Аз съм SPO на PGWAD @PgwadaS , предоставяйки ви Част 1: Основи на поредицата „Програмиране с Haskell“, благодарение на @rubypools . Днес ще разгледаме някои от основополагащите концепции около Haskell ...

Безкрайни структури от данни в JavaScript
Езици като Haskell могат да работят директно с Infinite Lists, но може ли тази възможност да бъде пренесена в света на JavaScript? В реалния свят имаме работа с „безкрайни“ идеи през цялото време. Всички положителни числа са пример за безкрайна концепция, на която не бихме хвърлили око. Но обикновено, когато програмираме, трябва да мислим за тези безкрайни концепции по краен начин. Не можете да имате Масив от всички положителни числа (поне не и в JavaScript!). Това, което..

По-лесно боравене с файлове
„По-рано тази седмица“ научихме за абстракцията Handle , която ни помага да се справяме с файлове в Haskell. Важна част от тази абстракция е, че манипулаторите са или „отворени“, или „затворени“. Днес ще разгледаме няколко идеи, които да ни помогнат да се справим с дръжките за отваряне и затваряне по-грациозно. Когато за първи път получим дръжка, тя е „отворена“. След като приключим с него, можем (и трябва) да го „затворим“, така че другите части на нашата програма да могат да го..

Струни, захранвани от Fusion!
В последните няколко статии прегледахме различните типове низове в Haskell и споменах няколко пъти „ефективност“. Но какво означава това? Трябва да е малко по-ясно с Bytestrings. Като използваме по-компактно представяне на данните и оперираме с тип от по-ниско ниво като Word8 , нашите низове ще заемат по-малко място в паметта и ще имат повече непрекъснатост. Това прави операциите върху тях по-ефективни. Но какво точно е в Text , което го прави по-ефективен от използването на String..

Красотата на извода на типове в Haskell
Като функционален език за програмиране, Haskell предлага новаторска и освежаваща перспектива за софтуерното инженерство. Строгата система от типове на езика гарантира разработването на надеждни, поддържаеми и ефективни програми. Сред множеството функции, предоставени от Haskell, една се откроява като отличителен фактор - извод за тип. Разбиране на типовия извод Изводът за тип е характеристика на определени езици за програмиране, която позволява автоматично откриване на типа данни на..

Разбиране на декларациите на сложни типове в Haskell
Гмуркане в гъвкавите функции Нека да разгледаме лесен пример: multThree :: (Num a) => a -> a -> a -> a multThree x y z = x * y * z Тук multThree приема три параметъра. Всички параметри трябва да са от същия тип, както е отбелязано от a в декларацията на типа. Освен че са от един и същи тип, те имат допълнително ограничение, както е показано от класа тип Num , т.е. (Num a) . Какво се счита за част от класа тип Num ? За да се счита даден тип за част от класа..

Научете Hask/Elm за страхотен JavaScript
Курс, който взех в колежа, наречен Основи на езика за програмиране, ме запозна с Haskell и не мина много време, докато бях напълно очарован от този език. Това беше първият ми вкус на парадигмата на функционалното програмиране и всичко, което правех, ми се стори като решаване на загадка. Haskell ме накара да се почувствам умен и въпреки че програмирането не трябва да е всичко решаване на загадки, определено е забавно да се чувстваш умен. Един ден преди урока приятел, който споделяше..