Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Практика работы на языке Haskell

Покупка
Артикул: 616092.03.99
Доступ онлайн
199 ₽
В корзину
В книге рассматриваются прикладные аспекты работы на языке функционального программирования Haskell. Приводятся описания инструментальных средств пяти классов — трансляторов, интегрированных сред разработки, вспомогательных утилит, специализированных библиотек и справочно-архивных систем. Для каждого программного средства приводится краткое описание, его функциональность и примеры использования. Книга станет хорошим подспорьем как для начинающих программистов, так и для профессионалов, использующих в своей практике функциональную парадигму программирования. На сайте издательства дмк.рф имеются все описанные в книге инструменты для полноценной работы на языке Haskell.
Душкин, Р. В. Практика работы на языке Haskell : практическое пособие / Р. В. Душкин. - 2-е изд. - Москва : ДМК Пресс, 2023. - 288 с. - ISBN 978-5-89818-624-1. - Текст : электронный. - URL: https://znanium.com/catalog/product/2108512 (дата обращения: 06.05.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Практика работы
на языке Haskell

Душкин Р. В.

Москва, 2023

2-е издание, электронное
УДК 004.4
ББК 32.973.26-018.2
Д86

Д86
Душкин, Роман Викторович.

Практика работы на языке Haskell / Р. В. Душкин. — 2-е изд., эл. — 1 файл pdf : 288 с. — 
Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital 
Editions 4.5 ; экран 10". — Текст : электронный.

ISBN 978-5-89818-624-1

В книге рассматриваются прикладные аспекты работы на языке функционального программирования 
Haskell. Приводятся описания инструментальных средств пяти классов — трансляторов, интегрированных 
сред разработки, вспомогательных утилит, специализированных библиотек и справочно-
архивных систем. Для каждого программного средства приводится краткое описание, его функциональность 
и примеры использования.
Книга станет хорошим подспорьем как для начинающих программистов, так и для профессионалов, 
использующих в своей практике функциональную парадигму программирования.
На сайте издательства дмк.рф имеются все описанные в книге инструменты для полноценной 
работы на языке Haskell.

УДК 004.4 
ББК 32.973.26-018.2

Электронное издание на основе печатного издания: Практика работы на языке Haskell / Р. В. Душкин. — Москва : 
ДМК Пресс, 2016. — 288 с. — ISBN 978-5-97060-363-5. — Текст : непосредственный.

Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то 
ни было средствами без  письменного разрешения владельцев авторских прав.
Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно 
существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим 
издательство не несет ответственности за возможные ошибки, связанные с использованием книги.

В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, 
правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации.

ISBN 978-5-89818-624-1
© Душкин Р. В., 2010 
© Издание, ДМК Пресс, 2016
8

1
11

1.1
HUGS . . . . . . . . . . . . . . . . . . . . . . . . . . .
11

1.1.1
. . . . . . . . . . . . . . . .
12

1.1.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
12

1.1.3
. . . . . . . . . . . . . .
13

1.1.4
HUGS
. . . . . . .
23

1.1.5
. . . . . . . . . . . . . . . . . . . .
24

1.1.6
. . . . . . . . . . . . . . . . . . . .
26

1.2
GHC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26

1.2.1
. . . . . . . . . . . . . . . .
27

1.2.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
27

1.2.3
. . . . . . . . . . . . . .
28

1.2.4
. . . . . . . . . .
43

1.2.5
. . . . . . . . . . . . . . . . . . . . .
47

1.2.6
Haskell
. . . . . . . . . . . . .
51

2
53

2.1
Eclipse . . . . . . . . . . . . . . . .
54

2.1.1
. . . . . . . . . . . . . . . .
54

2.1.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
55

2.1.3
. . . . . . . . . . . . . .
57
2.2
EclipseFP . . . . . . . . . . . . . . . . . . . . . . . . . . .
58

2.2.1
. . . . . . . . . . . . . . . .
59

2.2.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
59

2.2.3
. . . . . . . . . . . . . .
61

3
70

3.1
DrIFT
. . . . . . . . . . . . . . . . . . . . . . . . . . .
70

3.1.1
. . . . . . . . . . . . . . . .
72

3.1.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
72

3.1.3
. . . . . . . . . . . . . .
75

3.1.4
. . . . . . . . . . . . . . . . .
78

3.2
Buddha . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81

3.2.1
. . . . . . . . . . . . . . . .
83

3.2.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
83

3.2.3
. . . . . . . . . . . . . .
84

3.2.4
. . . . . . . . . . . . . . . . . . . . . . . .
88

3.3
HLint . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91

3.3.1
. . . . . . . . . . . . . . . .
92

3.3.2
, . . . . . . . . . .
92

3.3.3
. . . . . . . . . . . . . . . . . . . .
96

3.4
Haddock . . . . . . . . . . . . . . . .
97

3.4.1
. . . . . . . . . . . . . . . .
99

3.4.2
. . . . . . . . . . . . . . . . . . . . . . . . . .
99

3.4.3
. . . . . . . . . . . . . . 105

3.5
Darcs . . . . . . . . . . . . . . . . . . . . . 111
3.5.1
. . . . . . . . . . . . . . . . 112

3.5.2
. . . . . . . . . . . . . 113

3.5.3
. . . . . . . . . 115

3.6
Cabal
. . . . . . . . . . . . . . . . . . . . 140

3.6.1
. . . . . . . . . . . . . . . . 142

3.6.2
. . . . . . . . . . . . . . . . . . . . . . . . . . 142

3.6.3
. . . . . . . . . . . . . . 143

3.6.4
. . . . . . . . . . . . . . . . . . . . 156
4
160

4.1
Parsec . . . . . 161
4.1.1
. . . . . . . . . . . . . . . . 163

4.1.2
. . . . . . . . . . . . . . . 163

4.1.3
. . . . . . . . . . . 169

4.2
PPrint . . . . . 195
4.2.1
. . . . . . . . . . . . . . . . 196

4.2.2
. . . . . . . . . . . . . . . . . . . . . . . . . . 197

4.2.3
. . . . . . . . . . . 199

4.3
HaskellDB . . . . . . . . . . . . . . . . . . . 212
4.3.1
. . . . . . . . . . . . . . . . 212

4.3.2
. . . . . . . . . . . . . . . . . . . . . . . . . . 213

4.3.3
. . . . . . . . . . . 217

4.4
wxHaskell . . . 233
4.4.1
. . . . . . . . . . . . . . . . 234

4.4.2
. . . . . . . . . . . . . . . . . . . . . . . . . . 234

4.4.3
. . . . . . . . . . . . . . . . . . . . . 235

4.5
HaskellNet
. . . . . . . . . . 242

4.5.1
. . . . . . . . . . . . . . . . 243

4.5.2
. . . . . . . . . . . 243

5
273

5.1
Hackage
. . . . . . . . . . . . . . . . . . . . 273

5.1.1
. . . . . . . . . . . . . . . . 275

5.2
Hoogle . . . . . . . . . . . . . . . . . . . . . . . . . . 275
5.2.1
. . . . . . . . . . . . . . . . 276

5.2.2
. . . . . . . . . . . . . . 276

5.3
HsColour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
5.3.1
. . . . . . . . . . . . . . . . 279

5.3.2
. . . . . . . . . . . . . . . . . . . . . 279

5.3.3
. . . . . . . . . . . . . . 280

282

284
Haskell [4, 5] , . , -
, -
, -
. [4] , , , . , ,
, .

1998 -
. [22] , . ,
, , -
. XXI , Haskell , -
. , Java C++?

, -
-
, , , -
. , -
, . , Hello, world!. -
, .

? , , -
. , , -
. ?, Haskell λ-?, -
?, -
?. . , . -
, .

, -
. , -
. , ,
, β-. -
, . , -
CD , , -
-
.

!
, -
, Haskell . :

1) ;

2) ;

3) ;

4) ;

5) .

-
-
, -
. . 1.

, -
, . , , , , . (, -
), , . , -
, .
. 1. . -
. -
, . . 12 HUGS. -
, , ().

. -
2009 . () . -
Windows. , , -
.

, . 
LATEX listingsHaskell, .

, Haskell
: foldr, last, Functor, fst . . , , -
: let, class, module. -
: (//), ($) . ., : [, }.

-
, :

class Pretty a where
pretty
: :
a −> Doc
prettyList
: :
[ a ] −> Doc

prettyList = list
.
map pretty

-, -
. , , , , -
, , . --
.

, , -
, , -
.
, -
, (),
(), . . Haskell -
, . :

1) HUGS;

2) GHC (GHCi, ,
, ).

-
[1, 2]. [5] -
Haskell.

1.1
HUGS

HUGS (, HUGS 98) Haskell, --
. HUGS 98 Haskell-98. -
[3].
1. 1.1.1
HUGS

Haskell User's Gofer System

2006

(Mark P. Jones)

(Yale Haskell Group)

MacOS, Unix, Windows

14 BSD

Web-http://www.haskell.org/hugs/

HBI, GHCi

1.1.2
HUGS 1995 -
-
Gofer (. GOod For Equational Reasoning). -
Haskell -
-
. 1999 HUGS Haskell-98 ().

HUGS , Haskell, , , , -
1.1. HUGS
13

-
.

HUGS Haskell-98 -
() , :

1) HUGS () -
Haskell-98 FFI (-
) (, (.)).

2) -
-
Haskell, GHC, HUGS.

3) HUGS , -
(GHC).

runhugs, -
Haskell . main . -
.

1.1.3
HUGS :

hugs {option} {file}

. (, ), ().
, 
Доступ онлайн
199 ₽
В корзину