-
Book Overview & Buying
-
Table Of Contents
-
Feedback & Rating

Haskell High Performance Programming
By :

The libraries in this subsection are as follows:
conduit
, io-streams
, and pipes
: General streaming libraries, that avoid problems with lazy IO
lens
: Solving the "nested record update" problem in a "batteries included" fashion
convertible
: Conversions between types using a single function without information loss
basic-prelude
, classy-prelude
: Prelude
alternatives that encourage best practices in modern Haskell
chunked-data
: Class abstractions to different builders, zipping, and reading and writing to files and handles
Streaming libraries are generally aimed at countering problems with lazy IO. Refer to Chapter 6, I/O and Streaming, for an in-depth discussion about problems with lazy IO and Haskell streaming libraries.
Lenses can be thought of as a generalization of getters and setters that compose well. A sore point of vanilla Haskell is nested record updates. The syntax is not very nice, for instance, this:
update rec new_c = rec { field_c = (field_c rec...