summaryrefslogtreecommitdiff
path: root/p/haskell-enumerator/debian/control
blob: 03933bbc8037f06bb2b9afac2e04b08984daef3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
Source: haskell-enumerator
Maintainer: Debian Haskell Group <pkg-haskell-maintainers@lists.alioth.debian.org>
Uploaders: Clint Adams <clint@debian.org>
Priority: extra
Section: haskell
Build-Depends: debhelper (>= 9),
 haskell-devscripts (>= 0.10),
 cdbs,
 ghc,
 ghc-prof,
 libghc-text-dev (>= 0.7),
 libghc-text-prof,
Build-Depends-Indep: ghc-doc,
 libghc-text-doc,
Standards-Version: 3.9.6
Homepage: https://john-millikin.com/software/enumerator/
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-haskell/DHG_packages.git/
Vcs-Git: git://git.debian.org/git/pkg-haskell/DHG_packages.git

Package: libghc-enumerator-dev
Architecture: any
Depends: ${haskell:Depends},
 ${shlibs:Depends},
 ${misc:Depends},
Recommends: ${haskell:Recommends},
Suggests: ${haskell:Suggests},
Provides: ${haskell:Provides},
Description: high-performance left-fold enumerators${haskell:ShortBlurb}
 Typical buffer–based incremental I/O is based around a single loop,
 which reads data from some source (such as a socket or file),
 transforms it, and generates one or more outputs (such as a line
 count, HTTP responses, or modified file). Although efficient and
 safe, these loops are all single–purpose; it is difficult or
 impossible to compose buffer–based processing loops.
 .
 Haskell's concept of "lazy I/O" allows pure code to operate on data
 from an external source. However, lazy I/O has several shortcomings.
 Most notably, resources such as memory and file handles can be
 retained for arbitrarily long periods of time, causing unpredictable
 performance and error conditions.
 .
 Enumerators are an efficient, predictable, and safe alternative to
 lazy I/O. Discovered by Oleg Kiselyov, they allow large datasets to
 be processed in near–constant space by pure code. Although somewhat
 more complex to write, using enumerators instead of lazy I/O
 produces more correct programs.
 .
 This library contains an enumerator implementation for Haskell,
 designed to be both simple and efficient. Three core types are
 defined, along with numerous helper functions:
 .
 Iteratee: Data sinks, analogous to left folds. Iteratees consume
 a sequence of input values, and generate a single output value. Many
 iteratees are designed to perform side effects (such as printing to
 stdout), so they can also be used as monad transformers.
 .
 Enumerator: Data sources, which generate input sequences. Typical
 enumerators read from a file handle, socket, random number generator,
 or other external stream. To operate, enumerators are passed an
 iteratee, and provide that iteratee with input until either the
 iteratee has completed its computation, or EOF.
 .
 Enumeratee: Data transformers, which operate as both enumerators
 and iteratees. Enumeratees read from an outer enumerator, and
 provide the transformed data to an inner iteratee.
 .
 ${haskell:Blurb}

Package: libghc-enumerator-prof
Architecture: any
Depends: ${haskell:Depends},
 ${misc:Depends},
Recommends: ${haskell:Recommends},
Suggests: ${haskell:Suggests},
Provides: ${haskell:Provides},
Description: high-performance left-fold enumerators${haskell:ShortBlurb}
 Typical buffer–based incremental I/O is based around a single loop,
 which reads data from some source (such as a socket or file),
 transforms it, and generates one or more outputs (such as a line
 count, HTTP responses, or modified file). Although efficient and
 safe, these loops are all single–purpose; it is difficult or
 impossible to compose buffer–based processing loops.
 .
 Haskell's concept of "lazy I/O" allows pure code to operate on data
 from an external source. However, lazy I/O has several shortcomings.
 Most notably, resources such as memory and file handles can be
 retained for arbitrarily long periods of time, causing unpredictable
 performance and error conditions.
 .
 Enumerators are an efficient, predictable, and safe alternative to
 lazy I/O. Discovered by Oleg Kiselyov, they allow large datasets to
 be processed in near–constant space by pure code. Although somewhat
 more complex to write, using enumerators instead of lazy I/O
 produces more correct programs.
 .
 This library contains an enumerator implementation for Haskell,
 designed to be both simple and efficient. Three core types are
 defined, along with numerous helper functions:
 .
 Iteratee: Data sinks, analogous to left folds. Iteratees consume
 a sequence of input values, and generate a single output value. Many
 iteratees are designed to perform side effects (such as printing to
 stdout), so they can also be used as monad transformers.
 .
 Enumerator: Data sources, which generate input sequences. Typical
 enumerators read from a file handle, socket, random number generator,
 or other external stream. To operate, enumerators are passed an
 iteratee, and provide that iteratee with input until either the
 iteratee has completed its computation, or EOF.
 .
 Enumeratee: Data transformers, which operate as both enumerators
 and iteratees. Enumeratees read from an outer enumerator, and
 provide the transformed data to an inner iteratee.
 .
 ${haskell:Blurb}

Package: libghc-enumerator-doc
Architecture: all
Section: doc
Depends: ${misc:Depends},
 ${haskell:Depends},
Recommends: ${haskell:Recommends},
Suggests: ${haskell:Suggests},
Description: high-performance left-fold enumerators${haskell:ShortBlurb}
 Typical buffer–based incremental I/O is based around a single loop,
 which reads data from some source (such as a socket or file),
 transforms it, and generates one or more outputs (such as a line
 count, HTTP responses, or modified file). Although efficient and
 safe, these loops are all single–purpose; it is difficult or
 impossible to compose buffer–based processing loops.
 .
 Haskell's concept of "lazy I/O" allows pure code to operate on data
 from an external source. However, lazy I/O has several shortcomings.
 Most notably, resources such as memory and file handles can be
 retained for arbitrarily long periods of time, causing unpredictable
 performance and error conditions.
 .
 Enumerators are an efficient, predictable, and safe alternative to
 lazy I/O. Discovered by Oleg Kiselyov, they allow large datasets to
 be processed in near–constant space by pure code. Although somewhat
 more complex to write, using enumerators instead of lazy I/O
 produces more correct programs.
 .
 This library contains an enumerator implementation for Haskell,
 designed to be both simple and efficient. Three core types are
 defined, along with numerous helper functions:
 .
 Iteratee: Data sinks, analogous to left folds. Iteratees consume
 a sequence of input values, and generate a single output value. Many
 iteratees are designed to perform side effects (such as printing to
 stdout), so they can also be used as monad transformers.
 .
 Enumerator: Data sources, which generate input sequences. Typical
 enumerators read from a file handle, socket, random number generator,
 or other external stream. To operate, enumerators are passed an
 iteratee, and provide that iteratee with input until either the
 iteratee has completed its computation, or EOF.
 .
 Enumeratee: Data transformers, which operate as both enumerators
 and iteratees. Enumeratees read from an outer enumerator, and
 provide the transformed data to an inner iteratee.
 .
 ${haskell:Blurb}