Unknown - haskell-notes

Здесь есть возможность читать онлайн «Unknown - haskell-notes» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Старинная литература, на английском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

haskell-notes: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «haskell-notes»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

haskell-notes — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «haskell-notes», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

В Haskell функции тоже являются значениями. Функция может принимать в качестве аргумента функцию и

возвращать функцию.

Функции бывают чистыми и с побочными эффектами . Чистые функции – это правдивые функции. Их основ-

ная особенность в том, что для одинаковых ответов на их вопросы, они скажут одинаковые ответы. Функции

с побочными эффектами так не делают, например если мы спросим у такой функции какого цвета глаза у

Коли? В один день она может сказать голубые, а в другой зелёные. В Haskell таким функциям не доверяют и

огораживают их от чистых функций, но я увлёкся, обо всём об этом вы узнаете из этой книги.

Благодарности

Я бы хотел поблагодарить родителей за терпение и поддержку, сообщество Haskell, всех тех людей, у

которых я мог свободно учится языку Haskell. Когда я только начинал мне очень помогли книга Мирана

Липовача (Miran Lipovaca) Learn You A Haskell for a Great Good и книга Хал Дама (Hal Daume III) Yet another

Haskell Tutorial. Спасибо Дмитрию Астапову, Дугласу Мак Илрою (Douglas McIlroy) и Джону Хьюзу (John

Huges) за великодушное согласие на использование примеров из их статей. Большое спасибо Кате Столяро-

вой за идею написания книги. Спасибо Александру Мозгунову за расширение моего кругозора в Haskell и не

только. Спасибо Оксане Станевич за редактирование и правки первой главы.

Хочется поблагодарить тех, кто присылал правки, после появления первой версии книги. Огромное спа-

сибо Андрею Мельникову. Его поддержка и замечания значительно углубили материал книги, вывели её

на новый уровень. Книга сильно изменилась после комментариев Владимира Шабанова (появились части о

сборщике мусора). Многие правки внесли Сергей Дмитриев и Кирилл Заборский. Также хотелось бы отме-

тить тех, кто вносил правки через github и ru_declarative: lionet, d_ao, odrdo, ul.

Технические благодарности: команде GHC, за компилятор Haskell, Джону Мак Фарлану (John MacFarlane)

за систему вёрстки pandoc, команде TexLive, авторам XeLatex, автору пакета hscolour Малькольму Уолласу

(Malcolm Wallace) за подсветку синтаксиса, авторам пакетов c Hackage: diagrams (Брент Йорги (Brent Yorgey),

Райан Йэйтс (Ryan Yates)) QuickCheck (Коэн Клаессен (Koen Claessen), Бьорн Брингерт (Bjorn Bringert), Ник

Смолбоун (Nick Smallbone)), criterion (Брайан О’Салливан (Bryan O’Sullivan)), HCodecs (Джордж Гиоргадзе

(George Giorgidze)), fingertree (Росс Патерсон (Ross Paterson), Ральф Хинце (Ralf Hinze)), Hipmunk (Фелипе

Лесса (Felipe A. Lessa)), OpenGL (Джэйсон Даджит (Jason Dagit), Свен Пэнн (Sven Panne) и GLFW (Пол Лю

(Paul H. Liu), Марк Санет (Marc Sunet)).

12 | Предисловие

Глава 1

Основы

Есть мнение, что Haskell очень большой язык. Это и правда так. В Haskell много разных конструкций,

синтаксического сахара, которые делают код более наглядным. Также в Haskell много библиотек на раз-

ные случаи жизни. Однако, обману ли я ваши ожидания, сказав, что всё это имеет достаточно компактную

основу? Это и правда так, вам осталось лишь убедиться в наглядности и простоте Haskell. В этой главе мы

пробежимся по нему, охватив одним взглядом целиком весь язык. Несколько наглядных конструкций, немно-

го моих пояснений, и вы поймёте, что к чему. Если что-то сразу не станет ясно, или где-то я опущу какие-то

пояснения, будьте уверены – в следующих главах мы обязательно обратимся к этим моментам и обсудим их

подробнее.

1.1 Общая картина

Программы на Haskell бывают двух видов: это приложения (executable) и библиотеки (library). Приложе-

ния представляют собой исполняемые файлы, которые решают некоторую задачу, к примеру – это может

быть компилятор языка, сортировщик данных в директориях, календарь, или цитатник на каждый день, лю-

бая полезная утилита. Библиотеки тоже решают задачи, но решают их внутри самого языка. Они содержат

отдельные значения, функции, которые можно подключать к другой программе Haskell, и которыми можно

пользоваться.

Программа состоит из модулей (module). И здесь работает правило: один модуль – один файл. Имя модуля

совпадает с именем файла. Имя модуля начинается с большой буквы, тогда как файлы имеют расширение

.hs. Например FirstModule.hs. Посмотрим на типичный модуль в Haskell:

--------------------------------------

-- шапка

module Имя(определение1, определение2,..., определениеN) where

import Модуль1( ...)

import Модуль2( ...)

...

---------------------------------------

-- определения

определение1

определение2

...

Каждый модуль содержит набор определений. Относительно модуля определения делятся на экспорти-

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «haskell-notes»

Представляем Вашему вниманию похожие книги на «haskell-notes» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «haskell-notes»

Обсуждение, отзывы о книге «haskell-notes» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x