/var/lib/ghc/package.conf.d/enumerator-0.4.18.conf is in libghc-enumerator-dev 0.4.18-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | name: enumerator
version: 0.4.18
id: enumerator-0.4.18-00404bf3c1b253011746ea9a15975fa6
license: MIT
copyright: 2010-2011 John Millikin, 2011 Mikhail Vorozhtsov
maintainer: jmillikin@gmail.com
stability: experimental
homepage: https://john-millikin.com/software/enumerator/
package-url:
synopsis: Reliable, high-performance processing with left-fold enumerators
description: 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.
category: Data, Enumerator
author: John Millikin <jmillikin@gmail.com>
exposed: True
exposed-modules: Data.Enumerator Data.Enumerator.Binary
Data.Enumerator.Internal Data.Enumerator.IO Data.Enumerator.List
Data.Enumerator.Text Data.Enumerator.Trans
hidden-modules: Data.Enumerator.Compatibility Data.Enumerator.Util
trusted: False
import-dirs: /usr/lib/haskell-packages/ghc/lib/enumerator-0.4.18/ghc-7.4.1
library-dirs: /usr/lib/haskell-packages/ghc/lib/enumerator-0.4.18/ghc-7.4.1
hs-libraries: HSenumerator-0.4.18
extra-libraries:
extra-ghci-libraries:
include-dirs:
includes:
depends: base-4.5.0.0-40b99d05fae6a4eea95ea69e6e0c9702
bytestring-0.9.2.1-18f26186028d7c0e92e78edc9071d376
containers-0.4.2.1-cfc6420ecc2194c9ed977b06bdfd9e69
text-0.11.1.13-9b63b6813ed4eef16b7793151cdbba4d
transformers-0.2.2.0-367ec8196a45fab9903c082ddf1e964e
hugs-options:
cc-options:
ld-options:
framework-dirs:
frameworks:
haddock-interfaces: /usr/lib/ghc-doc/haddock/enumerator-0.4.18/enumerator.haddock
haddock-html: /usr/share/doc/libghc-enumerator-doc/html/
|